diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2018-05-11 12:34:22 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2018-05-11 12:36:48 +0300 |
commit | bac9b047788a53677be7ecdcf755fcd90629185d (patch) | |
tree | f880ed733f25c9991c73f351eef6e459763613f2 /source/blender/depsgraph | |
parent | 20b6eabd4282890f2d990fcb31555ff34699d861 (diff) |
Add comment about weird special handling of scene freeing in depsgraph.
Diffstat (limited to 'source/blender/depsgraph')
-rw-r--r-- | source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc | 3 |
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); |