[Bf-blender-cvs] [eb9826d] blender-v2.74-release: Versioning code to correct socket naming after 340b76b42c53816ddac1b4cecdff3d8d2010a9cc

Antony Riakiotakis noreply at git.blender.org
Tue Mar 24 15:59:59 CET 2015


Commit: eb9826d8d9c71989cf4232d96f0e1ea332ede6d2
Author: Antony Riakiotakis
Date:   Mon Mar 23 18:33:50 2015 +0100
Branches: blender-v2.74-release
https://developer.blender.org/rBeb9826d8d9c71989cf4232d96f0e1ea332ede6d2

Versioning code to correct socket naming after
340b76b42c53816ddac1b4cecdff3d8d2010a9cc

Reported by formerly Old_Demon on blenderartists.

Apparently this caused old files to lose their links to material sockets
(noob own mistake from inexperience with node system).

This should either be included in release with version checking being
set to version 2.73 and subversion 10, without tweaking the
BKE_blender.h file

OR

340b76b42c53816ddac1b4cecdff3d8d2010a9cc should be reverted for this
release.

Thanks to Lukas for checking this out.

Conflicts:
	source/blender/blenkernel/BKE_blender.h
	source/blender/blenloader/intern/versioning_270.c

===================================================================

M	source/blender/blenloader/intern/versioning_270.c

===================================================================

diff --git a/source/blender/blenloader/intern/versioning_270.c b/source/blender/blenloader/intern/versioning_270.c
index 735ed19..cd0869f 100644
--- a/source/blender/blenloader/intern/versioning_270.c
+++ b/source/blender/blenloader/intern/versioning_270.c
@@ -643,4 +643,32 @@ void blo_do_versions_270(FileData *fd, Library *UNUSED(lib), Main *main)
 		}
 	}
 
+	if (!MAIN_VERSION_ATLEAST(main, 274, 3)) {
+		FOREACH_NODETREE(main, ntree, id)
+		{
+			bNode *node;
+			bNodeSocket *sock;
+
+			for (node = ntree->nodes.first; node; node = node->next) {
+				if (node->type == SH_NODE_MATERIAL) {
+					for (sock = node->inputs.first; sock; sock = sock->next) {
+						if (STREQ(sock->name, "Refl")) {
+							BLI_strncpy(sock->name, "DiffuseIntensity", sizeof(sock->name));
+						}
+					}
+				}
+				else if (node->type == SH_NODE_MATERIAL_EXT) {
+					for (sock = node->outputs.first; sock; sock = sock->next) {
+						if (STREQ(sock->name, "Refl")) {
+							BLI_strncpy(sock->name, "DiffuseIntensity", sizeof(sock->name));
+						}
+						else if (STREQ(sock->name, "Ray Mirror")) {
+							BLI_strncpy(sock->name, "Reflectivity", sizeof(sock->name));
+						}
+					}
+				}
+			}
+		}
+		FOREACH_NODETREE_END
+	}
 }




More information about the Bf-blender-cvs mailing list