Fix T38100: laplacian smooth crash
This commit is contained in:
@@ -677,7 +677,12 @@ static CustomDataMask required_data_mask(Object *UNUSED(ob), ModifierData *md)
|
|||||||
static void deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
static void deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts, ModifierApplyFlag UNUSED(flag))
|
float (*vertexCos)[3], int numVerts, ModifierApplyFlag UNUSED(flag))
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = get_dm(ob, NULL, derivedData, NULL, false, false);
|
DerivedMesh *dm;
|
||||||
|
|
||||||
|
if (numVerts == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
dm = get_dm(ob, NULL, derivedData, NULL, false, false);
|
||||||
|
|
||||||
laplaciansmoothModifier_do((LaplacianSmoothModifierData *)md, ob, dm,
|
laplaciansmoothModifier_do((LaplacianSmoothModifierData *)md, ob, dm,
|
||||||
vertexCos, numVerts);
|
vertexCos, numVerts);
|
||||||
@@ -690,7 +695,12 @@ static void deformVertsEM(
|
|||||||
ModifierData *md, Object *ob, struct BMEditMesh *editData,
|
ModifierData *md, Object *ob, struct BMEditMesh *editData,
|
||||||
DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
|
||||||
{
|
{
|
||||||
DerivedMesh *dm = get_dm(ob, editData, derivedData, NULL, false, false);
|
DerivedMesh *dm;
|
||||||
|
|
||||||
|
if (numVerts == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
dm = get_dm(ob, editData, derivedData, NULL, false, false);
|
||||||
|
|
||||||
laplaciansmoothModifier_do((LaplacianSmoothModifierData *)md, ob, dm,
|
laplaciansmoothModifier_do((LaplacianSmoothModifierData *)md, ob, dm,
|
||||||
vertexCos, numVerts);
|
vertexCos, numVerts);
|
||||||
|
Reference in New Issue
Block a user