diff options
author | Jacques Lucke <jacques@blender.org> | 2022-07-23 15:37:39 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2022-07-23 15:37:58 +0300 |
commit | d53ea1d0af58cfdcd230e75ba4ac58453bdbd808 (patch) | |
tree | 8c8ac33e72dd2e47c7343d0342e58a0ad9509cfc /source | |
parent | 092732d1136cf4bed04f5dcb117e7f4a0df5fc0c (diff) |
Fix T99905: wrong toposort when the node tree is cyclic
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/nodes/intern/node_tree_ref.cc | 1 |
1 files changed, 1 insertions, 0 deletions
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; |