diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-10-19 20:44:08 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-10-19 20:44:08 +0400 |
commit | 7e620f04a1072e5bcffb92c9db501ebe9a51a25c (patch) | |
tree | af30b8880a41e3c7c71f1b52fb9158ed0d5dab97 /source/blender/blenkernel/intern/collision.c | |
parent | f72f1dca6c70bd4597f0106adbd50608cdd8c01b (diff) |
Fix #32920: cloth physics with collision exploding in some cases, due to
uninitialized memory usage.
Diffstat (limited to 'source/blender/blenkernel/intern/collision.c')
-rw-r--r-- | source/blender/blenkernel/intern/collision.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/collision.c b/source/blender/blenkernel/intern/collision.c index 6631afcddaf..05c916f9362 100644 --- a/source/blender/blenkernel/intern/collision.c +++ b/source/blender/blenkernel/intern/collision.c @@ -458,7 +458,8 @@ static CollPair* cloth_collision(ModifierData *md1, ModifierData *md2, distance = 2.0 * (double)( epsilon1 + epsilon2 + ALMOST_ZERO ); #endif - if (distance <= (epsilon1 + epsilon2 + ALMOST_ZERO)) { + // distance -1 means no collision result + if (distance != -1.0f && (distance <= (epsilon1 + epsilon2 + ALMOST_ZERO))) { normalize_v3_v3(collpair->normal, collpair->vector); collpair->distance = distance; |