forked from bartvdbraak/blender
Partial fix for #30606. In node tree updates also update the sock->link pointers when only the NTREE_UPDATE_NODES flag is set, this happens when duplicating a node, which can lead to wrong pointers on the duplicated but unlinked node.
This commit is contained in:
parent
5ae9ad9113
commit
8486a2187f
@ -1543,13 +1543,13 @@ void ntreeUpdateTree(bNodeTree *ntree)
|
||||
bNodeTreeType *ntreetype= ntreeGetType(ntree->type);
|
||||
bNode *node;
|
||||
|
||||
/* set the bNodeSocket->link pointers */
|
||||
if (ntree->update & NTREE_UPDATE_LINKS)
|
||||
if (ntree->update & (NTREE_UPDATE_LINKS|NTREE_UPDATE_NODES)) {
|
||||
/* set the bNodeSocket->link pointers */
|
||||
ntree_update_link_pointers(ntree);
|
||||
|
||||
/* update the node level from link dependencies */
|
||||
if (ntree->update & (NTREE_UPDATE_LINKS|NTREE_UPDATE_NODES))
|
||||
|
||||
/* update the node level from link dependencies */
|
||||
ntree_update_node_level(ntree);
|
||||
}
|
||||
|
||||
/* update individual nodes */
|
||||
for (node=ntree->nodes.first; node; node=node->next) {
|
||||
|
Loading…
Reference in New Issue
Block a user