From ba4b7b43195c17436beaba95956087be4fb746a9 Mon Sep 17 00:00:00 2001 From: Jacques Lucke Date: Fri, 24 Dec 2021 12:34:04 +0100 Subject: Fix T94162: incorrect handling when there are multiple group outputs Typically a node group should only have a single Group Output node. However, currently Blender already supports having multiple group outputs, one of which is active. This wasn't handled correctly by geometry nodes. Differential Revision: https://developer.blender.org/D13611 --- source/blender/nodes/intern/derived_node_tree.cc | 3 +++ 1 file changed, 3 insertions(+) (limited to 'source/blender/nodes/intern/derived_node_tree.cc') diff --git a/source/blender/nodes/intern/derived_node_tree.cc b/source/blender/nodes/intern/derived_node_tree.cc index dc223f07a26..449c6598307 100644 --- a/source/blender/nodes/intern/derived_node_tree.cc +++ b/source/blender/nodes/intern/derived_node_tree.cc @@ -270,6 +270,9 @@ void DOutputSocket::foreach_target_socket(ForeachTargetSocketFn target_fn, } } else if (linked_node->is_group_output_node()) { + if (linked_node.node_ref() != context_->tree().group_output_node()) { + continue; + } if (context_->is_root()) { /* This is a group output in the root node group. */ path_info.sockets.append(linked_socket); -- cgit v1.2.3