diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-12-14 17:20:33 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-12-14 17:29:16 +0300 |
commit | e67f7e922cfe6742753944fa1bf4ace358b382a7 (patch) | |
tree | 8f3c3925532b1f8e8a7d7883ba3b3460e18e13f5 /source/blender/blenkernel/intern/library_remap.c | |
parent | 1e18efa1df1ad999303143156e0742d97d4c86bb (diff) |
Attempt to sanitize node tree deletion
Make it explicit when freeing node tree which is owned by other
ID or when freeing node tree which is outside of a bmain.
Diffstat (limited to 'source/blender/blenkernel/intern/library_remap.c')
-rw-r--r-- | source/blender/blenkernel/intern/library_remap.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/source/blender/blenkernel/intern/library_remap.c b/source/blender/blenkernel/intern/library_remap.c index 70f3c6d6cf6..458d723c95a 100644 --- a/source/blender/blenkernel/intern/library_remap.c +++ b/source/blender/blenkernel/intern/library_remap.c @@ -679,19 +679,13 @@ void BKE_libblock_relink_to_newid(ID *id) void BKE_libblock_free_data(ID *id, const bool do_id_user) { - /* NOTE: We set pointers to NULL so subsequent call of this function doesn't - * cause double-free. - * This is mainly to prevent crazy behavior of ntreeFreeTree() which does - * call BKE_libblock_free_data() for nodetrees outside of bmain. */ if (id->properties) { IDP_FreeProperty_ex(id->properties, do_id_user); MEM_freeN(id->properties); - id->properties = NULL; } if (id->override_static) { BKE_override_static_free(&id->override_static); - id->override_static = NULL; } /* XXX TODO remove animdata handling from each type's freeing func, and do it here, like for copy! */ |