Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2019-04-04 16:07:37 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2019-04-04 16:16:31 +0300
commitc81eca3d986115ae8f3c542e9b00b89795233864 (patch)
tree78c10d967df0e3d8b84e2de74581a053cc80d44e /source/blender/blenkernel
parent3c6deb69f79afd3c3483b7a2eafb28a24a050712 (diff)
Fix T63276: crash deleting object with alembic constraint.
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r--source/blender/blenkernel/intern/constraint.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/constraint.c b/source/blender/blenkernel/intern/constraint.c
index b22ffce5300..6d7765d4314 100644
--- a/source/blender/blenkernel/intern/constraint.c
+++ b/source/blender/blenkernel/intern/constraint.c
@@ -4572,10 +4572,12 @@ static void transformcache_evaluate(bConstraint *con, bConstraintOb *cob, ListBa
const float frame = DEG_get_ctime(cob->depsgraph);
const float time = BKE_cachefile_time_offset(cache_file, frame, FPS);
- BKE_cachefile_ensure_handle(G.main, cache_file);
+ /* Must always load ABC handle on original. */
+ CacheFile *cache_file_orig = (CacheFile *)DEG_get_original_id(&cache_file->id);
+ BKE_cachefile_ensure_handle(G.main, cache_file_orig);
if (!data->reader) {
- data->reader = CacheReader_open_alembic_object(cache_file->handle,
+ data->reader = CacheReader_open_alembic_object(cache_file_orig->handle,
data->reader,
cob->ob,
data->object_path);