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-04-19 13:03:02 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2018-04-19 13:05:17 +0300
commitb352d2705d1f4849022aa3d93d0d1a8881862d7b (patch)
treea11785c4d2cc5fa677a0fc1e884194aa2d303727 /source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc
parentcaa7101df545bf5f3827fd26216b7e6d83e2f452 (diff)
Depsgraph: Fix crash with copy-on-write enabled
Was caused by ec0756af6c7, once again, we can't pass view layer, need to pass index. The sad part is that currently we don't have quick way to look up view layer by index. Can do similar thing as we do for bones and bases.
Diffstat (limited to 'source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc')
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc
index 390619aeeaa..750b0054ee5 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc
@@ -70,6 +70,8 @@ void DepsgraphNodeBuilder::build_view_layer(
ViewLayer *view_layer,
eDepsNode_LinkedState_Type linked_state)
{
+ view_layer_index_ = BLI_findindex(&scene->view_layers, view_layer);
+ BLI_assert(view_layer_index_ != -1);
/* Scene ID block. */
add_id_node(&scene->id);
/* Time source. */
@@ -134,14 +136,12 @@ void DepsgraphNodeBuilder::build_view_layer(
build_movieclip(clip);
}
/* Collections. */
- int view_layer_index = BLI_findindex(&scene->view_layers, view_layer);
- BLI_assert(view_layer_index != -1);
add_operation_node(&scene->id,
DEG_NODE_TYPE_LAYER_COLLECTIONS,
function_bind(BKE_layer_eval_view_layer_indexed,
_1,
&scene_cow->id,
- view_layer_index),
+ view_layer_index_),
DEG_OPCODE_VIEW_LAYER_EVAL);
/* Parameters evaluation for scene relations mainly. */
add_operation_node(&scene->id,