[Bf-blender-cvs] [3deb4f4cb8b] blender-v2.91-release: Fix T81426: Infinite loop building VSE relations
Richard Antalik
noreply at git.blender.org
Mon Oct 26 00:34:59 CET 2020
Commit: 3deb4f4cb8ba4558adbb24597fb799252449a799
Author: Richard Antalik
Date: Mon Oct 26 00:30:27 2020 +0100
Branches: blender-v2.91-release
https://developer.blender.org/rB3deb4f4cb8ba4558adbb24597fb799252449a799
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
===================================================================
M source/blender/depsgraph/intern/builder/deg_builder_relations.cc
===================================================================
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. */
More information about the Bf-blender-cvs
mailing list