From 2994a9b1d7fc96ff70aaa98946883b50035772ef Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Wed, 22 Feb 2023 08:59:25 +0800 Subject: [PATCH 1/2] =?UTF-8?q?:bug:=20=E6=96=87=E6=A1=A3=E8=BD=AC?= =?UTF-8?q?=E6=8D=A2=E6=A0=87=E9=A2=98=E5=90=8E=E6=96=87=E6=A1=A3=E6=A0=91?= =?UTF-8?q?=E5=88=B7=E6=96=B0=E4=B8=8D=E6=AD=A3=E7=A1=AE=20https://github.?= =?UTF-8?q?com/siyuan-note/siyuan/issues/7435?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/model/heading.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/kernel/model/heading.go b/kernel/model/heading.go index 2e6762b88..458f034dd 100644 --- a/kernel/model/heading.go +++ b/kernel/model/heading.go @@ -224,10 +224,15 @@ func Doc2Heading(srcID, targetID string, after bool) (srcTreeBox, srcTreePath st contentPivot.Unlink() } - // 推送给前端移除旧文档 + box := Conf.Box(srcTree.Box) + if removeErr := box.Remove(srcTree.Path); nil != removeErr { + logging.LogWarnf("remove tree [%s] failed: %s", srcTree.Path, removeErr) + } + box.removeSort([]string{srcTree.ID}) + RemoveRecentDoc([]string{srcTree.ID}) evt := util.NewCmdResult("removeDoc", 0, util.PushModeBroadcast) evt.Data = map[string]interface{}{ - "ids": []string{srcTree.Root.ID}, + "ids": []string{srcTree.ID}, } util.PushEvent(evt) From 6c0f976ed279e9eb9b95a24f0f2513415ed68242 Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Wed, 22 Feb 2023 09:05:41 +0800 Subject: [PATCH 2/2] =?UTF-8?q?:bug:=20=E6=96=87=E6=A1=A3=E8=BD=AC?= =?UTF-8?q?=E6=8D=A2=E6=A0=87=E9=A2=98=E5=90=8E=E6=96=87=E6=A1=A3=E6=A0=91?= =?UTF-8?q?=E5=88=B7=E6=96=B0=E4=B8=8D=E6=AD=A3=E7=A1=AE=20https://github.?= =?UTF-8?q?com/siyuan-note/siyuan/issues/7435?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/model/heading.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kernel/model/heading.go b/kernel/model/heading.go index 458f034dd..33fb4f10c 100644 --- a/kernel/model/heading.go +++ b/kernel/model/heading.go @@ -238,6 +238,8 @@ func Doc2Heading(srcID, targetID string, after bool) (srcTreeBox, srcTreePath st srcTreeBox, srcTreePath = srcTree.Box, srcTree.Path // 返回旧的文档块位置,前端后续会删除旧的文档块 targetTree.Root.SetIALAttr("updated", util.CurrentTimeSecondsStr()) + treenode.RemoveBlockTreesByRootID(srcTree.ID) + treenode.RemoveBlockTreesByRootID(targetTree.ID) err = indexWriteJSONQueue(targetTree) IncSync() RefreshBacklink(srcTree.ID) @@ -331,6 +333,7 @@ func Heading2Doc(srcHeadingID, targetBoxID, targetPath string) (srcRootBlockID, if nil == srcTree.Root.FirstChild { srcTree.Root.AppendChild(treenode.NewParagraph()) } + treenode.RemoveBlockTreesByRootID(srcTree.ID) if err = indexWriteJSONQueue(srcTree); nil != err { return "", "", err }