diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-11-15 18:38:20 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-11-15 18:38:20 +0300 |
commit | 637d5ab6359edefe8ac23c92f338799127e39d18 (patch) | |
tree | 43fa7b2de5c9a7ace396df1907b766fa48f136a6 /source | |
parent | ba9bd979f17600501b56c197ae062ae89ac50226 (diff) |
Depsgraph: Clear localization tag for CoW IDs
They are self-contained now, and should not cause any sync or
free happening when freeing them.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc b/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc index 3e3bd91a08c..0c50ce6b82a 100644 --- a/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc +++ b/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc @@ -1112,6 +1112,8 @@ void deg_tag_copy_on_write_id(ID *id_cow, const ID *id_orig) BLI_assert(id_cow != id_orig); BLI_assert((id_orig->tag & LIB_TAG_COPIED_ON_WRITE) == 0); id_cow->tag |= LIB_TAG_COPIED_ON_WRITE; + /* This ID is no longer localized, is a self-sustaining copy now. */ + id_cow->tag &= ~LIB_TAG_LOCALIZED; id_cow->orig_id = (ID *)id_orig; } |