Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Goudey <h.goudey@me.com>2022-09-03 01:37:10 +0300
committerHans Goudey <h.goudey@me.com>2022-09-03 01:45:29 +0300
commitaa08545a019606e9155d62144ffc773c787e31b9 (patch)
tree87528a6d21cb199c25ccbb1456f9745e4c75103e /source/blender/editors/space_node/node_group.cc
parenta736ca33ab08bc72d17418d0e55c164aa8e306d8 (diff)
Cleanup: Use new node topology cache for sorting multi input sockets
Assuming the cost of building the cache is ammortized, this may be be helpful because it removes some quadratic behavior.
Diffstat (limited to 'source/blender/editors/space_node/node_group.cc')
-rw-r--r--source/blender/editors/space_node/node_group.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/editors/space_node/node_group.cc b/source/blender/editors/space_node/node_group.cc
index 3a2c2c7a9da..0edeac574df 100644
--- a/source/blender/editors/space_node/node_group.cc
+++ b/source/blender/editors/space_node/node_group.cc
@@ -653,7 +653,7 @@ static bool node_group_make_use_node(bNode &node, bNode *gnode)
static bool node_group_make_test_selected(bNodeTree &ntree,
bNode *gnode,
const char *ntree_idname,
- ReportList &reports)
+ ReportList &reports)
{
int ok = true;
@@ -1042,8 +1042,10 @@ static int node_group_make_exec(bContext *C, wmOperator *op)
nodeSetActive(&ntree, gnode);
if (ngroup) {
ED_node_tree_push(&snode, ngroup, gnode);
+
+ ngroup->ensure_topology_cache();
LISTBASE_FOREACH (bNode *, node, &ngroup->nodes) {
- sort_multi_input_socket_links(snode, *node, nullptr, nullptr);
+ sort_multi_input_socket_links(*node, nullptr, nullptr);
}
}
}