[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [57364] trunk/blender/intern/cycles/ blender/blender_python.cpp: Fix cycles OSL node sockets not preserving values when updating with new code .

Brecht Van Lommel brechtvanlommel at pandora.be
Mon Jun 10 22:47:58 CEST 2013


Revision: 57364
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=57364
Author:   blendix
Date:     2013-06-10 20:47:58 +0000 (Mon, 10 Jun 2013)
Log Message:
-----------
Fix cycles OSL node sockets not preserving values when updating with new code.

Modified Paths:
--------------
    trunk/blender/intern/cycles/blender/blender_python.cpp

Modified: trunk/blender/intern/cycles/blender/blender_python.cpp
===================================================================
--- trunk/blender/intern/cycles/blender/blender_python.cpp	2013-06-10 20:34:34 UTC (rev 57363)
+++ trunk/blender/intern/cycles/blender/blender_python.cpp	2013-06-10 20:47:58 UTC (rev 57364)
@@ -317,11 +317,6 @@
 				b_node.outputs.remove(b_sock);
 				b_sock = BL::NodeSocket(PointerRNA_NULL);
 			}
-			
-			if (!b_sock) {
-				/* create new socket */
-				b_sock = b_node.outputs.create(socket_type.c_str(), param->name.c_str(), param->name.c_str());
-			}
 		}
 		else {
 			b_sock = b_node.inputs[param->name];
@@ -331,15 +326,16 @@
 				b_node.inputs.remove(b_sock);
 				b_sock = BL::NodeSocket(PointerRNA_NULL);
 			}
-			
-			if (!b_sock) {
-				/* create new socket */
-				b_sock = b_node.inputs.create(socket_type.c_str(), param->name.c_str(), param->name.c_str());
-			}
 		}
 
-		/* set default value */
-		if(b_sock) {
+		if(!b_sock) {
+			/* create new socket */
+			if(param->isoutput)
+				b_sock = b_node.outputs.create(socket_type.c_str(), param->name.c_str(), param->name.c_str());
+			else
+				b_sock = b_node.inputs.create(socket_type.c_str(), param->name.c_str(), param->name.c_str());
+
+			/* set default value */
 			if(data_type == BL::NodeSocket::type_VALUE) {
 				set_float(b_sock.ptr, "default_value", default_float);
 			}




More information about the Bf-blender-cvs mailing list