[Bf-blender-cvs] [d53ea1d0af5] master: Fix T99905: wrong toposort when the node tree is cyclic

Jacques Lucke noreply at git.blender.org
Sat Jul 23 14:38:29 CEST 2022


Commit: d53ea1d0af58cfdcd230e75ba4ac58453bdbd808
Author: Jacques Lucke
Date:   Sat Jul 23 14:37:39 2022 +0200
Branches: master
https://developer.blender.org/rBd53ea1d0af58cfdcd230e75ba4ac58453bdbd808

Fix T99905: wrong toposort when the node tree is cyclic

===================================================================

M	source/blender/nodes/intern/node_tree_ref.cc

===================================================================

diff --git a/source/blender/nodes/intern/node_tree_ref.cc b/source/blender/nodes/intern/node_tree_ref.cc
index 64a8690a869..05e7fe33776 100644
--- a/source/blender/nodes/intern/node_tree_ref.cc
+++ b/source/blender/nodes/intern/node_tree_ref.cc
@@ -522,6 +522,7 @@ static void toposort_from_start_node(const NodeTreeRef::ToposortDirection direct
   /* Do a depth-first search to sort nodes topologically. */
   Stack<Item, 64> nodes_to_check;
   nodes_to_check.push({&start_node});
+  node_states[start_node.id()].is_in_stack = true;
   while (!nodes_to_check.is_empty()) {
     Item &item = nodes_to_check.peek();
     const NodeRef &node = *item.node;



More information about the Bf-blender-cvs mailing list