[Bf-blender-cvs] [d490e68] master: Fix T38100: laplacian smooth crash

Campbell Barton noreply at git.blender.org
Tue Jan 7 17:57:01 CET 2014


Commit: d490e686f03ce75ab3f58a24bd0e6b8ff82a10ca
Author: Campbell Barton
Date:   Wed Jan 8 03:44:00 2014 +1100
https://developer.blender.org/rBd490e686f03ce75ab3f58a24bd0e6b8ff82a10ca

Fix T38100: laplacian smooth crash

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

M	source/blender/modifiers/intern/MOD_laplaciansmooth.c

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

diff --git a/source/blender/modifiers/intern/MOD_laplaciansmooth.c b/source/blender/modifiers/intern/MOD_laplaciansmooth.c
index ed562af..9f65915 100644
--- a/source/blender/modifiers/intern/MOD_laplaciansmooth.c
+++ b/source/blender/modifiers/intern/MOD_laplaciansmooth.c
@@ -677,7 +677,12 @@ static CustomDataMask required_data_mask(Object *UNUSED(ob), ModifierData *md)
 static void deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData,
                         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,
 	                           vertexCos, numVerts);
@@ -690,7 +695,12 @@ static void deformVertsEM(
         ModifierData *md, Object *ob, struct BMEditMesh *editData,
         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,
 	                           vertexCos, numVerts);




More information about the Bf-blender-cvs mailing list