diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-07-02 15:34:19 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-07-02 19:09:01 +0300 |
commit | 09ea5dfd096ea4e9c2ed5c4d4b1fb4e56d7b6713 (patch) | |
tree | dd2e69b34081598cb858281b5945205d81f630c7 | |
parent | 2062d649bf866331d27f00322008049594e9db35 (diff) |
Fix assert in Alembic tests with constraints
Leave the reader to be created on the CoW object in the depsgraph evaluation,
don't assign the one used for importing to the original object.
-rw-r--r-- | source/blender/alembic/intern/abc_object.cc | 3 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/cachefile.c | 8 |
2 files changed, 4 insertions, 7 deletions
diff --git a/source/blender/alembic/intern/abc_object.cc b/source/blender/alembic/intern/abc_object.cc index e437273c1be..54450ce1cb2 100644 --- a/source/blender/alembic/intern/abc_object.cc +++ b/source/blender/alembic/intern/abc_object.cc @@ -263,9 +263,6 @@ void AbcObjectReader::setupObjectTransform(const float time) data->cache_file = m_settings->cache_file; id_us_plus(&data->cache_file->id); - - data->reader = reinterpret_cast<CacheReader *>(this); - this->incref(); } } diff --git a/source/blender/blenkernel/intern/cachefile.c b/source/blender/blenkernel/intern/cachefile.c index 272413ece4a..2d6256f12e2 100644 --- a/source/blender/blenkernel/intern/cachefile.c +++ b/source/blender/blenkernel/intern/cachefile.c @@ -100,11 +100,11 @@ void BKE_cachefile_reader_open(CacheFile *cache_file, void BKE_cachefile_reader_free(CacheFile *cache_file, struct CacheReader **reader) { #ifdef WITH_ALEMBIC - if (cache_file) { - BLI_assert(cache_file->id.tag & LIB_TAG_COPIED_ON_WRITE); - } - if (*reader != NULL) { + if (cache_file) { + BLI_assert(cache_file->id.tag & LIB_TAG_COPIED_ON_WRITE); + } + CacheReader_free(*reader); *reader = NULL; |