Cloth: Fix for crash with meshes with no faces, 2. Fix for crash on switching from to another mesh

This commit is contained in:
2008-02-05 15:09:48 +00:00
parent 7a70e5c0c0
commit a8c25e279d
3 changed files with 12 additions and 3 deletions

View File

@@ -51,6 +51,7 @@
#include "BLI_blenlib.h"
#include "BLI_arithb.h"
#include "BLI_editVert.h"
#include "BLI_edgehash.h"
#include "BLI_linklist.h"
@@ -203,6 +204,10 @@ BVH *bvh_build_from_cloth (ClothModifierData *clmd, float epsilon)
verts = cloth->verts;
// in the moment, return zero if no faces there
if(!cloth->numfaces)
return NULL;
bvh = MEM_callocN(sizeof(BVH), "BVH");
if (bvh == NULL)
{

View File

@@ -101,6 +101,10 @@ BVH *bvh_build_from_mvert (MFace *mfaces, unsigned int numfaces, MVert *x, unsig
return NULL;
}
// in the moment, return zero if no faces there
if(!numfaces)
return NULL;
bvh->flags = 0;
bvh->leaf_tree = NULL;
bvh->leaf_root = NULL;

View File

@@ -5135,9 +5135,9 @@ static void object_panel_cloth(Object *ob)
else
{
but = uiDefButI(block, TOG, REDRAWBUTSOBJECT, "Cloth", 10,200,130,20, &val, 0, 0, 0, 0, "Sets object to become cloth");
uiButSetFunc(but, object_cloth__enabletoggle, ob, NULL);
}
uiButSetFunc(but, object_cloth__enabletoggle, ob, NULL);
uiDefBut(block, LABEL, 0, "",10,10,300,0, NULL, 0.0, 0, 0, 0, ""); /* tell UI we go to 10,10*/
if(clmd)