[Bf-blender-cvs] [b0278b24868] master: Depsgraph: Fix IDs being remapped in original compositor
Sergey Sharybin
noreply at git.blender.org
Wed May 29 12:50:11 CEST 2019
Commit: b0278b24868d7cd6326577fcbae5ace13a0e9200
Author: Sergey Sharybin
Date: Wed May 29 12:48:59 2019 +0200
Branches: master
https://developer.blender.org/rBb0278b24868d7cd6326577fcbae5ace13a0e9200
Depsgraph: Fix IDs being remapped in original compositor
Happens with files from T65223.
Caused by CoW scene still pointing to the original compositor.
Happens when scene was referenced for parameters only.
===================================================================
M source/blender/depsgraph/intern/builder/deg_builder_nodes_scene.cc
===================================================================
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes_scene.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes_scene.cc
index b092799e692..64f841d56fc 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes_scene.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes_scene.cc
@@ -47,6 +47,17 @@ void DepsgraphNodeBuilder::build_scene_parameters(Scene *scene)
}
add_operation_node(&scene->id, NodeType::PARAMETERS, OperationCode::SCENE_EVAL);
add_operation_node(&scene->id, NodeType::PARAMETERS, OperationCode::PARAMETERS_EVAL);
+ /* NOTE: This is a bit overkill and can potentially pull a bit too much into the graph, but:
+ *
+ * - We definitely need an ID node for the scene's compositor, othetrwise re-mapping will no
+ * happen correct and we will risk remapping pointers in the main database.
+ * - Alternatively, we should discard compositor tree, but this might cause other headache like
+ * drivers which are coming from the tree.
+ *
+ * Would be nice to find some reliable way of ignoring compositor here, but it's already pulled
+ * in when building scene from view layer, so this particular case does not make things
+ * marginally worse. */
+ build_scene_compositor(scene);
}
void DepsgraphNodeBuilder::build_scene_compositor(Scene *scene)
More information about the Bf-blender-cvs
mailing list