Commit: f684dfc43216a3e9286202bd07b05064bb37f9ee
Author: Campbell Barton
Date:   Mon Apr 13 15:54:37 2015 +1000
Branches: master
https://developer.blender.org/rBf684dfc43216a3e9286202bd07b05064bb37f9ee

Fix T44364: Remove shape key crashes Blender

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

M       source/blender/blenkernel/intern/DerivedMesh.c
M       source/blender/modifiers/intern/MOD_cloth.c

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

diff --git a/source/blender/blenkernel/intern/DerivedMesh.c 
b/source/blender/blenkernel/intern/DerivedMesh.c
index 87a00c2..1ece9d8 100644
--- a/source/blender/blenkernel/intern/DerivedMesh.c
+++ b/source/blender/blenkernel/intern/DerivedMesh.c
@@ -1011,8 +1011,9 @@ static float (*get_orco_coords_dm(Object *ob, BMEditMesh 
*em, int layer, int *fr
                        ClothModifierData *clmd = (ClothModifierData 
*)modifiers_findByType(ob, eModifierType_Cloth);
                        KeyBlock *kb = 
BKE_keyblock_from_key(BKE_key_from_object(ob), clmd->sim_parms->shapekey_rest);
 
-                       if (kb->data)
+                       if (kb && kb->data) {
                                return kb->data;
+                       }
                }
 
                return NULL;
diff --git a/source/blender/modifiers/intern/MOD_cloth.c 
b/source/blender/modifiers/intern/MOD_cloth.c
index d76427c..392112e 100644
--- a/source/blender/modifiers/intern/MOD_cloth.c
+++ b/source/blender/modifiers/intern/MOD_cloth.c
@@ -98,7 +98,7 @@ static void deformVerts(ModifierData *md, Object *ob, 
DerivedMesh *derivedData,
        if (derivedData == NULL && clmd->sim_parms->shapekey_rest) {
                KeyBlock *kb = BKE_keyblock_from_key(BKE_key_from_object(ob),
                                                     
clmd->sim_parms->shapekey_rest);
-               if (kb->data != NULL) {
+               if (kb && kb->data != NULL) {
                        float (*layerorco)[3];
                        if (!(layerorco = DM_get_vert_data_layer(dm, 
CD_CLOTH_ORCO))) {
                                DM_add_vert_layer(dm, CD_CLOTH_ORCO, CD_CALLOC, 
NULL);

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to