Commit: 5ad7a248a3d972ea7aa7df261c85539610460ab8
Author: Martin Felke
Date:   Tue Jan 26 01:03:12 2016 +0100
Branches: fracture_modifier
https://developer.blender.org/rB5ad7a248a3d972ea7aa7df261c85539610460ab8

fixed two crashers: 1) when object had no material, that assignment failed. 2) 
constraints with empty meshislands crashed too

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

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

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

diff --git a/source/blender/blenkernel/intern/fracture.c 
b/source/blender/blenkernel/intern/fracture.c
index 3df1565..b3d0c67 100644
--- a/source/blender/blenkernel/intern/fracture.c
+++ b/source/blender/blenkernel/intern/fracture.c
@@ -2382,7 +2382,12 @@ int BKE_fracture_update_visual_mesh(FractureModifierData 
*fmd, bool do_custom_da
                        /* material index lookup and correction, avoid having 
the same material in different slots */
                        int index = 
GET_INT_FROM_POINTER(BLI_ghash_lookup(fmd->material_index_map,
                                                         
SET_INT_IN_POINTER(mp->mat_nr + matstart)));
-                       mp->mat_nr = index-1;
+
+                       if (index > 0)
+                               index--;
+
+                       mp->mat_nr = index;
+
                }
 
                /* fortunately we know how many faces "belong" to this 
meshisland, too */
@@ -2628,6 +2633,9 @@ RigidBodyShardCon 
*BKE_fracture_mesh_islands_connect(FractureModifierData *fmd,
 {
        RigidBodyShardCon *rbsc;
 
+       if (mi1 == NULL || mi2 == NULL)
+               return NULL;
+
        rbsc = BKE_rigidbody_create_shard_constraint(fmd->modifier.scene, 
con_type, false);
        rbsc->mi1 = mi1;
        rbsc->mi2 = mi2;

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to