[Bf-blender-cvs] [a280867ac2e] master: Fix T62289: crash with texture paint slots and missing node group datablock.

Brecht Van Lommel noreply at git.blender.org
Thu Mar 7 12:24:38 CET 2019


Commit: a280867ac2ed924e25f72d020c004b83044a1f51
Author: Brecht Van Lommel
Date:   Thu Mar 7 12:22:38 2019 +0100
Branches: master
https://developer.blender.org/rBa280867ac2ed924e25f72d020c004b83044a1f51

Fix T62289: crash with texture paint slots and missing node group datablock.

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

M	source/blender/blenkernel/intern/material.c

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

diff --git a/source/blender/blenkernel/intern/material.c b/source/blender/blenkernel/intern/material.c
index 89e6fb073ad..05be84c14e6 100644
--- a/source/blender/blenkernel/intern/material.c
+++ b/source/blender/blenkernel/intern/material.c
@@ -1039,7 +1039,7 @@ static int count_texture_nodes_recursive(bNodeTree *nodetree)
 		if (node->typeinfo->nclass == NODE_CLASS_TEXTURE && node->typeinfo->type == SH_NODE_TEX_IMAGE && node->id) {
 			tex_nodes++;
 		}
-		else if (node->type == NODE_GROUP) {
+		else if (node->type == NODE_GROUP && node->id) {
 			/* recurse into the node group and see if it contains any textures */
 			tex_nodes += count_texture_nodes_recursive((bNodeTree *)node->id);
 		}
@@ -1074,7 +1074,7 @@ static void fill_texpaint_slots_recursive(bNodeTree *nodetree, bNode *active_nod
 			}
 			(*index)++;
 		}
-		else if (node->type == NODE_GROUP) {
+		else if (node->type == NODE_GROUP && node->id) {
 			/* recurse into the node group and see if it contains any textures */
 			fill_texpaint_slots_recursive((bNodeTree *)node->id, active_node, ma, slots, index);
 		}



More information about the Bf-blender-cvs mailing list