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:
authorSergey Sharybin <sergey.vfx@gmail.com>2018-05-11 15:28:03 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2018-05-11 15:28:03 +0300
commit690a5f0e500b8c72e7ed7ba0d7c6068fe80c6991 (patch)
treeb08f01b74c105820d35e4d92dfd931ba684bd9b4
parent210bedd7e35107964ee8af1f2db9921c4b665ee7 (diff)
Depsgraph: Remove workaround for scene free
No functional changes commit ;)
-rw-r--r--source/blender/blenkernel/intern/library_remap.c2
-rw-r--r--source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc14
2 files changed, 1 insertions, 15 deletions
diff --git a/source/blender/blenkernel/intern/library_remap.c b/source/blender/blenkernel/intern/library_remap.c
index c5d6df382a7..983f6781572 100644
--- a/source/blender/blenkernel/intern/library_remap.c
+++ b/source/blender/blenkernel/intern/library_remap.c
@@ -780,7 +780,7 @@ void BKE_libblock_free_datablock(ID *id, const int UNUSED(flag))
const short type = GS(id->name);
switch (type) {
case ID_SCE:
- BKE_scene_free((Scene *)id);
+ BKE_scene_free_ex((Scene *)id, false);
break;
case ID_LI:
BKE_library_free((Library *)id);
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 f36f2ecdb46..7fd59f6408c 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
@@ -819,20 +819,6 @@ void deg_free_copy_on_write_datablock(ID *id_cow)
ob_cow->data = NULL;
break;
}
- case ID_SCE:
- {
- /* Special case for scene: we use explicit function call which
- * ensures no access to other datablocks is done.
- */
- /* Not sure why this is needed? If id_cow scene has been correctly created outside of Main database,
- * then freeing it with regular BKE_id_free should properly *not* do any
- * children datablock user refcount manipulation... --mont29 */
- Scene *scene = (Scene *)id_cow;
- BKE_scene_free_ex(scene, false);
- BKE_libblock_free_data(id_cow, false);
- id_cow->name[0] = '\0';
- return;
- }
default:
break;
}