🐛 删除父文档时子文档排序配置未清理干净 Fix https://github.com/siyuan-note/siyuan/issues/6469

This commit is contained in:
Liang Ding 2022-11-03 20:23:24 +08:00
parent 43ae47a902
commit 0b1e48c24a
No known key found for this signature in database
GPG key ID: 136F30F901A2231D
2 changed files with 4 additions and 24 deletions

View file

@ -1226,11 +1226,12 @@ func removeDoc(box *Box, p string) (err error) {
copyDocAssetsToDataAssets(box.ID, p)
rootID := tree.ID
var removeIDs []string
removeIDs = append(removeIDs, rootID)
ids := rootChildIDs(tree.ID)
removeIDs = append(removeIDs, ids...)
dir := path.Dir(p)
childrenDir := path.Join(dir, rootID)
childrenDir := path.Join(dir, tree.ID)
existChildren := box.Exist(childrenDir)
if existChildren {
absChildrenDir := filepath.Join(util.DataDir, tree.Box, childrenDir)
@ -1242,8 +1243,6 @@ func removeDoc(box *Box, p string) (err error) {
indexHistoryDir(filepath.Base(historyDir), NewLute())
if existChildren {
ids := util.GetChildDocIDs(filepath.Join(util.DataDir, tree.Box, childrenDir))
removeIDs = append(removeIDs, ids...)
if err = box.Remove(childrenDir); nil != err {
return
}

View file

@ -202,22 +202,3 @@ func FilterSelfChildDocs(paths []string) (ret []string) {
}
return
}
func GetChildDocIDs(parentDocDirAbsPath string) (ret []string) {
if !gulu.File.IsDir(parentDocDirAbsPath) {
return
}
filepath.Walk(parentDocDirAbsPath, func(p string, info os.FileInfo, err error) error {
if info.IsDir() {
return nil
}
if !strings.HasSuffix(p, ".sy") {
return nil
}
id := strings.TrimSuffix(filepath.Base(p), ".sy")
ret = append(ret, id)
return nil
})
return
}