[Bf-blender-cvs] [92a3995c6d4] master: Fix T67999: calling obj.data.materials.clear() crashes Blender

Sybren A. Stüvel noreply at git.blender.org
Wed Jul 31 17:19:49 CEST 2019


Commit: 92a3995c6d4487e5bc0735b35fbef5c34b29421a
Author: Sybren A. Stüvel
Date:   Wed Jul 31 17:18:04 2019 +0200
Branches: master
https://developer.blender.org/rB92a3995c6d4487e5bc0735b35fbef5c34b29421a

Fix T67999: calling obj.data.materials.clear() crashes Blender

The `BKE_material_clear_id()` didn't call `test_all_objects_materials()`,
which caused the object and mesh material slot count to go out of sync.

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

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

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

diff --git a/source/blender/blenkernel/intern/material.c b/source/blender/blenkernel/intern/material.c
index 6fdc1995ca5..391af8b96ab 100644
--- a/source/blender/blenkernel/intern/material.c
+++ b/source/blender/blenkernel/intern/material.c
@@ -496,6 +496,7 @@ void BKE_material_clear_id(Main *bmain, ID *id, bool update_data)
       MEM_freeN(*matar);
       *matar = NULL;
     }
+    test_all_objects_materials(bmain, id);
 
     if (update_data) {
       /* decrease mat_nr index */



More information about the Bf-blender-cvs mailing list