[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [49507] trunk/blender/source/blender: fix for crash when node groups loose their ID pointer references ( when linked libs don't load)
Campbell Barton
ideasman42 at gmail.com
Thu Aug 2 18:33:39 CEST 2012
Revision: 49507
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=49507
Author: campbellbarton
Date: 2012-08-02 16:33:38 +0000 (Thu, 02 Aug 2012)
Log Message:
-----------
fix for crash when node groups loose their ID pointer references (when linked libs don't load)
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/material.c
trunk/blender/source/blender/render/intern/source/pipeline.c
Modified: trunk/blender/source/blender/blenkernel/intern/material.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/material.c 2012-08-02 16:01:05 UTC (rev 49506)
+++ trunk/blender/source/blender/blenkernel/intern/material.c 2012-08-02 16:33:38 UTC (rev 49507)
@@ -1030,13 +1030,18 @@
bNode *node;
for (node = ntree->nodes.first; node; node = node->next) {
- if (node->id && GS(node->id->name) == ID_MA) {
- if (node->id == (ID *)mat)
- return 1;
+ if (node->id) {
+ if (GS(node->id->name) == ID_MA) {
+ if (node->id == (ID *)mat) {
+ return 1;
+ }
+ }
+ else if (node->type == NODE_GROUP) {
+ if (material_in_nodetree((bNodeTree *)node->id, mat)) {
+ return 1;
+ }
+ }
}
- else if (node->type == NODE_GROUP)
- if (material_in_nodetree((bNodeTree *)node->id, mat))
- return 1;
}
return 0;
Modified: trunk/blender/source/blender/render/intern/source/pipeline.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/pipeline.c 2012-08-02 16:01:05 UTC (rev 49506)
+++ trunk/blender/source/blender/render/intern/source/pipeline.c 2012-08-02 16:33:38 UTC (rev 49507)
@@ -1815,8 +1815,11 @@
return TRUE;
}
else if (node->type == NODE_GROUP) {
- if (node_tree_has_composite_output((bNodeTree *)node->id))
- return TRUE;
+ if (node->id) {
+ if (node_tree_has_composite_output((bNodeTree *)node->id)) {
+ return TRUE;
+ }
+ }
}
}
More information about the Bf-blender-cvs
mailing list