[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [45030] trunk/blender/source/blender/ blenkernel/intern/node.c: Partial fix for #30606.

Lukas Toenne lukas.toenne at googlemail.com
Tue Mar 20 17:59:03 CET 2012


Revision: 45030
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=45030
Author:   lukastoenne
Date:     2012-03-20 16:59:00 +0000 (Tue, 20 Mar 2012)
Log Message:
-----------
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.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/node.c

Modified: trunk/blender/source/blender/blenkernel/intern/node.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/node.c	2012-03-20 16:17:34 UTC (rev 45029)
+++ trunk/blender/source/blender/blenkernel/intern/node.c	2012-03-20 16:59:00 UTC (rev 45030)
@@ -1543,13 +1543,13 @@
 	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) {




More information about the Bf-blender-cvs mailing list