diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-03-11 12:07:36 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-03-11 16:34:13 +0300 |
commit | 57777b95428cef886bd3b2317b7728fa066acee1 (patch) | |
tree | e7555b4ccba56fc33c1a09155c4f25bbcb0d8c1f /source/blender/blenkernel/intern/softbody.c | |
parent | 2cb181d478c3f54adf91188beca0b3fd3e28bcaf (diff) |
Fix T61906: crash rendering softbody with Cycles and timeline visible.
Make sure we don't reallocate arrays in the pointcache when not needed, the
size of a memory allocation can be slightly bigger than the requested size.
Also, use consistent check for shared cached in copy and free functions.
Diffstat (limited to 'source/blender/blenkernel/intern/softbody.c')
-rw-r--r-- | source/blender/blenkernel/intern/softbody.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/softbody.c b/source/blender/blenkernel/intern/softbody.c index a1e2e0971d1..481eb617cc0 100644 --- a/source/blender/blenkernel/intern/softbody.c +++ b/source/blender/blenkernel/intern/softbody.c @@ -3037,7 +3037,7 @@ void sbFree(Object *ob) free_softbody_intern(sb); - if ((ob->id.tag & LIB_TAG_COPIED_ON_WRITE) == 0) { + if ((ob->id.tag & LIB_TAG_NO_MAIN) == 0) { /* Only free shared data on non-CoW copies */ BKE_ptcache_free_list(&sb->shared->ptcaches); sb->shared->pointcache = NULL; |