diff options
author | Rémi Verschelde <remi@verschelde.fr> | 2022-07-27 08:30:48 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-27 08:30:48 +0200 |
commit | 8a5c1dfd12c3e154d3de6b996b73542a47d275e2 (patch) | |
tree | ed091a46269e15d3c825a9d130c1ae913bdb92b6 | |
parent | e8309d49e0f5015587e10b0c8f2446a41e054c9d (diff) | |
parent | 2f4339818280e545e4c4811be71534d4147299aa (diff) |
Merge pull request #63521 from Chaosus/vs_fix_connections
Add a check to prevent duplicating connections in visual shader
-rw-r--r-- | scene/resources/visual_shader.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/scene/resources/visual_shader.cpp b/scene/resources/visual_shader.cpp index b68cce9dda..3cf643221b 100644 --- a/scene/resources/visual_shader.cpp +++ b/scene/resources/visual_shader.cpp @@ -967,6 +967,12 @@ void VisualShader::connect_nodes_forced(Type p_type, int p_from_node, int p_from ERR_FAIL_COND(!g->nodes.has(p_to_node)); ERR_FAIL_INDEX(p_to_port, g->nodes[p_to_node].node->get_input_port_count()); + for (const Connection &E : g->connections) { + if (E.from_node == p_from_node && E.from_port == p_from_port && E.to_node == p_to_node && E.to_port == p_to_port) { + return; + } + } + Connection c; c.from_node = p_from_node; c.from_port = p_from_port; |