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:
authorBastien Montagne <montagne29@wanadoo.fr>2018-05-11 12:34:22 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2018-05-11 12:36:48 +0300
commitbac9b047788a53677be7ecdcf755fcd90629185d (patch)
treef880ed733f25c9991c73f351eef6e459763613f2 /source/blender
parent20b6eabd4282890f2d990fcb31555ff34699d861 (diff)
Add comment about weird special handling of scene freeing in depsgraph.
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc3
1 files changed, 3 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 fa988514e33..4e233fe14ff 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
@@ -779,6 +779,9 @@ void deg_free_copy_on_write_datablock(ID *id_cow)
/* 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);