[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [55756] trunk/blender/source/blender/ blenloader/intern/versioning_250.c: Fix for old compatibility issue: 2.59. 2 do_versions was not handling all local node trees (world and lamp missing ).

Lukas Toenne lukas.toenne at googlemail.com
Wed Apr 3 13:36:48 CEST 2013


Revision: 55756
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=55756
Author:   lukastoenne
Date:     2013-04-03 11:36:48 +0000 (Wed, 03 Apr 2013)
Log Message:
-----------
Fix for old compatibility issue: 2.59.2 do_versions was not handling all local node trees (world and lamp missing).

Modified Paths:
--------------
    trunk/blender/source/blender/blenloader/intern/versioning_250.c

Modified: trunk/blender/source/blender/blenloader/intern/versioning_250.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/versioning_250.c	2013-04-03 11:28:42 UTC (rev 55755)
+++ trunk/blender/source/blender/blenloader/intern/versioning_250.c	2013-04-03 11:36:48 UTC (rev 55756)
@@ -742,22 +742,6 @@
 	}
 }
 
-static void do_versions_nodetree_default_value_259(bNodeTree *ntree)
-{
-	bNode *node;
-	bNodeSocket *sock;
-	for (node=ntree->nodes.first; node; node=node->next) {
-		for (sock = node->inputs.first; sock; sock = sock->next)
-			do_versions_socket_default_value_259(sock);
-		for (sock = node->outputs.first; sock; sock = sock->next)
-			do_versions_socket_default_value_259(sock);
-	}
-	for (sock = ntree->inputs.first; sock; sock = sock->next)
-		do_versions_socket_default_value_259(sock);
-	for (sock = ntree->outputs.first; sock; sock = sock->next)
-		do_versions_socket_default_value_259(sock);
-}
-
 void blo_do_versions_250(FileData *fd, Library *lib, Main *main)
 {
 	/* WATCH IT!!!: pointers from libdata have not been converted */
@@ -2736,33 +2720,25 @@
 	if (main->versionfile < 259 || (main->versionfile == 259 && main->subversionfile < 2)) {
 		{
 			/* Convert default socket values from bNodeStack */
-			Scene *sce;
-			Material *mat;
-			Tex *tex;
-			bNodeTree *ntree;
-
-			for (ntree = main->nodetree.first; ntree; ntree = ntree->id.next) {
-				do_versions_nodetree_default_value_259(ntree);
+			FOREACH_NODETREE(main, ntree, id) {
+				bNode *node;
+				bNodeSocket *sock;
+				
+				for (node=ntree->nodes.first; node; node=node->next) {
+					for (sock = node->inputs.first; sock; sock = sock->next)
+						do_versions_socket_default_value_259(sock);
+					for (sock = node->outputs.first; sock; sock = sock->next)
+						do_versions_socket_default_value_259(sock);
+				}
+				
+				for (sock = ntree->inputs.first; sock; sock = sock->next)
+					do_versions_socket_default_value_259(sock);
+				for (sock = ntree->outputs.first; sock; sock = sock->next)
+					do_versions_socket_default_value_259(sock);
+				
 				ntree->update |= NTREE_UPDATE;
 			}
-
-			for (sce = main->scene.first; sce; sce = sce->id.next)
-				if (sce->nodetree) {
-					do_versions_nodetree_default_value_259(sce->nodetree);
-					sce->nodetree->update |= NTREE_UPDATE;
-				}
-
-			for (mat = main->mat.first; mat; mat = mat->id.next)
-				if (mat->nodetree) {
-					do_versions_nodetree_default_value_259(mat->nodetree);
-					mat->nodetree->update |= NTREE_UPDATE;
-				}
-
-			for (tex = main->tex.first; tex; tex = tex->id.next)
-				if (tex->nodetree) {
-					do_versions_nodetree_default_value_259(tex->nodetree);
-					tex->nodetree->update |= NTREE_UPDATE;
-				}
+			FOREACH_NODETREE_END
 		}
 
 		{




More information about the Bf-blender-cvs mailing list