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:
authorRichard Antalik <richardantalik@gmail.com>2020-10-26 02:30:27 +0300
committerRichard Antalik <richardantalik@gmail.com>2020-10-26 02:30:27 +0300
commit3deb4f4cb8ba4558adbb24597fb799252449a799 (patch)
tree16b67c8d7ac71db0321054dc4f50a0a61168d28a /source/blender/depsgraph
parent8d1978a8e0131ab59e94e7e37e063db305166711 (diff)
Fix T81426: Infinite loop building VSE relations
It is possible to create scene strips pointing to each other. This is sanitized when rendering, but in dependency graph such setup will cause infinite loop. This patch fixes loop in dependency graph, but same problem exists in audaspace Reviewed By: sergey Differential Revision: https://developer.blender.org/D9262
Diffstat (limited to 'source/blender/depsgraph')
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_relations.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
index 86a365a4901..ec5cbc5c605 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
@@ -2667,6 +2667,9 @@ void DepsgraphRelationBuilder::build_scene_sequencer(Scene *scene)
if (scene->ed == nullptr) {
return;
}
+ if (built_map_.checkIsBuiltAndTag(scene, BuilderMap::TAG_SCENE_SEQUENCER)) {
+ return;
+ }
build_scene_audio(scene);
ComponentKey scene_audio_key(&scene->id, NodeType::AUDIO);
/* Make sure dependencies from sequences data goes to the sequencer evaluation. */