diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2011-12-31 19:10:38 +0400 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2011-12-31 19:10:38 +0400 |
commit | 1b4487e813edac9c5b57b6d5c6175c46c4a54b1c (patch) | |
tree | 59e9bd7c67fb68fe8eb2500f5f476a1f536d9b73 | |
parent | bac6757ea0b1c873b8dd8221592ea95eed8d5bac (diff) |
Fix [#29728] Explode Modifier Causes Crash.
The problem was in fact in recent BLI_edgehash changes: a typo in the new macro EDGE_ORD made v0 > v1, instead of v0 < v1. This caused the bug in explode modifier, which (ab)uses that ordering feature a bit…
-rw-r--r-- | source/blender/blenlib/intern/edgehash.c | 2 | ||||
-rw-r--r-- | source/blender/modifiers/intern/MOD_explode.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/blenlib/intern/edgehash.c b/source/blender/blenlib/intern/edgehash.c index b710e5d496d..97eb66eb49a 100644 --- a/source/blender/blenlib/intern/edgehash.c +++ b/source/blender/blenlib/intern/edgehash.c @@ -52,7 +52,7 @@ static unsigned int _ehash_hashsizes[]= { /* ensure v0 is smaller */ #define EDGE_ORD(v0, v1) \ - if (v0 < v1) { \ + if (v0 > v1) { \ v0 ^= v1; \ v1 ^= v0; \ v0 ^= v1; \ diff --git a/source/blender/modifiers/intern/MOD_explode.c b/source/blender/modifiers/intern/MOD_explode.c index 5bd38579b67..b18be28ac7f 100644 --- a/source/blender/modifiers/intern/MOD_explode.c +++ b/source/blender/modifiers/intern/MOD_explode.c @@ -790,8 +790,8 @@ static DerivedMesh * explodeMesh(ExplodeModifierData *emd, /* float timestep; */ int *facepa=emd->facepa; int totdup=0,totvert=0,totface=0,totpart=0; - int i, v, mindex=0; - unsigned int ed_v1, ed_v2; + int i, v; + unsigned int ed_v1, ed_v2, mindex=0; MTFace *mtface = NULL, *mtf; totface= dm->getNumFaces(dm); |