From b4e04a3d2edb3b5a87619e24667e514c46d3dd6e Mon Sep 17 00:00:00 2001 From: v-me-50 Date: Tue, 24 Jun 2025 17:51:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=9D=A1=E4=BB=B6=E5=88=86?= =?UTF-8?q?=E6=94=AF=E5=92=8C=E5=B9=B6=E8=A1=8C=E5=88=86=E6=94=AF=E4=B8=8B?= =?UTF-8?q?=E7=9A=84=E5=B9=B6=E8=A1=8C=E5=88=86=E6=94=AFpanic?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/internal/workflow/workflow.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/backend/internal/workflow/workflow.go b/backend/internal/workflow/workflow.go index aa17387..02bf4eb 100644 --- a/backend/internal/workflow/workflow.go +++ b/backend/internal/workflow/workflow.go @@ -245,7 +245,12 @@ func RunNode(node *WorkflowNode, ctx *ExecutionContext) error { var wg sync.WaitGroup errChan := make(chan error, len(node.ConditionNodes)) for _, branch := range node.ConditionNodes { - branch.ChildNode.Config["fromNodeData"] = node.Config["fromNodeData"] + if branch.ChildNode != nil { + if branch.ChildNode.ChildNode == nil { + branch.ChildNode.Config = make(map[string]any) + } + branch.ChildNode.Config["fromNodeData"] = node.Config["fromNodeData"] + } wg.Add(1) go func(node *WorkflowNode) { defer wg.Done() @@ -271,6 +276,9 @@ func RunNode(node *WorkflowNode, ctx *ExecutionContext) error { for _, branch := range node.ConditionNodes { if branch.Config["type"] == string(lastStatus) { if branch.ChildNode != nil { + if branch.ChildNode.Config == nil { + branch.ChildNode.Config = make(map[string]any) + } fromNodeData, ok := ctx.GetOutput(node.Config["fromNodeId"].(string)) if !ok { fromNodeData = nil