diff options
author | Kévin Dietrich <kevin.dietrich@mailoo.org> | 2016-12-08 01:01:51 +0300 |
---|---|---|
committer | Kévin Dietrich <kevin.dietrich@mailoo.org> | 2016-12-08 01:04:27 +0300 |
commit | 62a2ed97bacc3bc891a0ea3d3ab730d8253ab366 (patch) | |
tree | 17f34091a6798ba6d5e4fcb975f48eacbee05d4a | |
parent | a63108efb195ab2cf751875f26ce2293cc158e47 (diff) |
Fix crash when opening a Blender file containing Alembic data.
Was also affecting object linking.
-rw-r--r-- | source/blender/blenkernel/intern/constraint.c | 1 | ||||
-rw-r--r-- | source/blender/blenloader/intern/readfile.c | 4 | ||||
-rw-r--r-- | source/blender/modifiers/intern/MOD_meshsequencecache.c | 1 |
3 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/constraint.c b/source/blender/blenkernel/intern/constraint.c index 9d4de30aa2c..cb74dbcd8d1 100644 --- a/source/blender/blenkernel/intern/constraint.c +++ b/source/blender/blenkernel/intern/constraint.c @@ -4404,6 +4404,7 @@ static void transformcache_free(bConstraint *con) #ifdef WITH_ALEMBIC CacheReader_free(data->reader); #endif + data->reader = NULL; } } diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index af73410728b..03c5d083456 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -5302,6 +5302,10 @@ static void direct_link_modifiers(FileData *fd, ListBase *lb) csmd->delta_cache = NULL; csmd->delta_cache_num = 0; } + else if (md->type == eModifierType_MeshSequenceCache) { + MeshSeqCacheModifierData *msmcd = (MeshSeqCacheModifierData *)md; + msmcd->reader = NULL; + } } } diff --git a/source/blender/modifiers/intern/MOD_meshsequencecache.c b/source/blender/modifiers/intern/MOD_meshsequencecache.c index 72644d56323..2f00a7c71b0 100644 --- a/source/blender/modifiers/intern/MOD_meshsequencecache.c +++ b/source/blender/modifiers/intern/MOD_meshsequencecache.c @@ -81,6 +81,7 @@ static void freeData(ModifierData *md) #ifdef WITH_ALEMBIC CacheReader_free(mcmd->reader); #endif + mcmd->reader = NULL; } } |