diff options
Diffstat (limited to 'source/blender/blenkernel/intern/scene.c')
-rw-r--r-- | source/blender/blenkernel/intern/scene.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c index 9583719dca9..4b2e7eff866 100644 --- a/source/blender/blenkernel/intern/scene.c +++ b/source/blender/blenkernel/intern/scene.c @@ -2453,8 +2453,14 @@ void BKE_scene_free_depsgraph_hash(Scene *scene) /* Query depsgraph for a specific contexts. */ -Depsgraph *BKE_scene_get_depsgraph(Scene *scene, SceneLayer *scene_layer) +Depsgraph *BKE_scene_get_depsgraph(Scene *scene, + SceneLayer *scene_layer, + bool allocate) { (void) scene_layer; - return scene->depsgraph_legacy; + Depsgraph *depsgraph = scene->depsgraph_legacy; + if (depsgraph == NULL && allocate) { + scene->depsgraph_legacy = depsgraph = DEG_graph_new(); + } + return depsgraph; } |