From f4f08b1fcf4a5ea53a1705ed96bd7c8aa342a941 Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Thu, 16 Feb 2023 15:06:11 +0800 Subject: [PATCH] =?UTF-8?q?:bug:=20=E5=85=B3=E7=B3=BB=E5=9B=BE=E9=83=A8?= =?UTF-8?q?=E5=88=86=E5=85=B3=E8=81=94=E4=B8=A2=E5=A4=B1=20Fix=20https://g?= =?UTF-8?q?ithub.com/siyuan-note/siyuan/issues/7383?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/model/graph.go | 21 ++++++++++++--------- kernel/sql/block_ref_query.go | 2 +- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/kernel/model/graph.go b/kernel/model/graph.go index 30be916f3..57894978d 100644 --- a/kernel/model/graph.go +++ b/kernel/model/graph.go @@ -113,23 +113,26 @@ func BuildTreeGraph(id, query string) (boxID string, nodes []*GraphNode, links [ rootIDs = append(rootIDs, rootDef.ID) } - sqlRootRefBlocks := sql.QueryRefRootBlocksByDefRootIDs(rootIDs) - for defRootID, sqlRefBlocks := range sqlRootRefBlocks { + sqlRefBlocks := sql.QueryRefRootBlocksByDefRootIDs(rootIDs) + for defRootID, sqlRefBlocks := range sqlRefBlocks { rootBlock := getBlockIn(rootDefBlocks, defRootID) if nil == rootBlock { continue } - refBlocks := fromSQLBlocks(&sqlRefBlocks, "", 0) - rootBlock.Refs = append(rootBlock.Refs, refBlocks...) - } - - // 按定义处理 - sqlRootRefBlocks = sql.QueryRefRootBlocksByDefRootIDs([]string{rootID}) - for _, sqlRefBlocks := range sqlRootRefBlocks { blocks = append(blocks, rootBlock) refBlocks := fromSQLBlocks(&sqlRefBlocks, "", 0) rootBlock.Refs = append(rootBlock.Refs, refBlocks...) + blocks = append(blocks, refBlocks...) + } + + // 按定义处理 + sqlRefBlocks = sql.QueryRefRootBlocksByDefRootIDs([]string{rootID}) + for _, sqlRefBlocks := range sqlRefBlocks { + blocks = append(blocks, rootBlock) + refBlocks := fromSQLBlocks(&sqlRefBlocks, "", 0) + rootBlock.Refs = append(rootBlock.Refs, refBlocks...) + blocks = append(blocks, refBlocks...) } } } diff --git a/kernel/sql/block_ref_query.go b/kernel/sql/block_ref_query.go index 93b066e0f..80cde1f18 100644 --- a/kernel/sql/block_ref_query.go +++ b/kernel/sql/block_ref_query.go @@ -170,7 +170,7 @@ func QueryRefRootBlocksByDefRootIDs(defRootIDs []string) (ret map[string][]*Bloc } if nil == ret[defRootID] { - ret[defRootID] = []*Block{} + ret[defRootID] = []*Block{&block} } else { ret[defRootID] = append(ret[defRootID], &block) }