[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14872] trunk/blender/source/blender: == Nodes ==

Willian Padovani Germano wpgermano at gmail.com
Fri May 16 22:57:06 CEST 2008


Revision: 14872
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14872
Author:   ianwill
Date:     2008-05-16 22:57:06 +0200 (Fri, 16 May 2008)

Log Message:
-----------
== Nodes ==

- "Memoryblock free: attempt to free NULL pointer" messages related to the Material node (Add->Input->Material). Deleting it and quitting Blender would bring 2 or 3 of these warnings. Trivial fix (check if NULL) in blenkernel/intern/node.c, though Nodes devs may be interested. Found while testing to fix the following bug:

== PyNodes ==

- Bug #11715 reported by Alexanter Feterman:

http://projects.blender.org/tracker/?func=detail&atid=125&aid=11715&group_id=9

Adding a Dynamic node and setting it to a pynode script would crash Blender if no Material Node (MatNode) was present.

Thanks Alexander for reporting and Brecht for assigning it to me.

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

Modified: trunk/blender/source/blender/blenkernel/intern/node.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/node.c	2008-05-16 20:21:40 UTC (rev 14871)
+++ trunk/blender/source/blender/blenkernel/intern/node.c	2008-05-16 20:57:06 UTC (rev 14872)
@@ -1989,7 +1989,7 @@
 		if(ntree->threadstack) {
 			for(a=0; a<BLENDER_MAX_THREADS; a++) {
 				for(nts=ntree->threadstack[a].first; nts; nts=nts->next)
-					MEM_freeN(nts->stack);
+					if (nts->stack) MEM_freeN(nts->stack);
 				BLI_freelistN(&ntree->threadstack[a]);
 			}
 

Modified: trunk/blender/source/blender/python/api2_2x/Node.c
===================================================================
--- trunk/blender/source/blender/python/api2_2x/Node.c	2008-05-16 20:21:40 UTC (rev 14871)
+++ trunk/blender/source/blender/python/api2_2x/Node.c	2008-05-16 20:57:06 UTC (rev 14872)
@@ -919,6 +919,8 @@
 	int i;
 	short len, wanted_len;
 
+	if (!stack || !stack[idx]) return 0; /* no MaterialNode */
+
 	if (type == SOCK_VALUE) {
 		val = PyNumber_Float(value);
 		if (!val)





More information about the Bf-blender-cvs mailing list