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:39:30 +0300
committerRichard Antalik <richardantalik@gmail.com>2020-10-26 02:39:30 +0300
commitbf10a56eea876320dd14f7a649e8d2a98cc5a3a7 (patch)
treefe69da969793a77c6d0cc30eb2b9e856e15af007
parente661df71e65e4a8b22f232d25c9831bbdbb08148 (diff)
parent8eb7344731f2e8cc910b03beb13722a31fc46f61 (diff)
Merge branch 'blender-v2.91-release'
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_relations.cc3
-rw-r--r--source/blender/sequencer/intern/prefetch.c4
-rw-r--r--source/blender/sequencer/intern/sequencer.c6
3 files changed, 11 insertions, 2 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. */
diff --git a/source/blender/sequencer/intern/prefetch.c b/source/blender/sequencer/intern/prefetch.c
index 013abb716d4..65b2b6c02cf 100644
--- a/source/blender/sequencer/intern/prefetch.c
+++ b/source/blender/sequencer/intern/prefetch.c
@@ -319,6 +319,7 @@ static void seq_prefetch_update_scene(Scene *scene)
return;
}
+ pfjob->scene = scene;
seq_prefetch_free_depsgraph(pfjob);
seq_prefetch_init_depsgraph(pfjob);
}
@@ -499,15 +500,14 @@ static PrefetchJob *seq_prefetch_start(const SeqRenderData *context, float cfra)
BLI_mutex_init(&pfjob->prefetch_suspend_mutex);
BLI_condition_init(&pfjob->prefetch_suspend_cond);
- pfjob->bmain = context->bmain;
pfjob->bmain_eval = BKE_main_new();
-
pfjob->scene = context->scene;
seq_prefetch_init_depsgraph(pfjob);
}
}
seq_prefetch_update_scene(context->scene);
seq_prefetch_update_context(context);
+ pfjob->bmain = context->bmain;
pfjob->cfra = cfra;
pfjob->num_frames_prefetched = 1;
diff --git a/source/blender/sequencer/intern/sequencer.c b/source/blender/sequencer/intern/sequencer.c
index c8dfb6b886f..068d836d1e6 100644
--- a/source/blender/sequencer/intern/sequencer.c
+++ b/source/blender/sequencer/intern/sequencer.c
@@ -6045,6 +6045,12 @@ static Sequence *sequencer_check_scene_recursion(Scene *scene, ListBase *seqbase
return seq;
}
+ if (seq->type == SEQ_TYPE_SCENE && (seq->flag & SEQ_SCENE_STRIPS)) {
+ if (sequencer_check_scene_recursion(scene, &seq->scene->ed->seqbase)) {
+ return seq;
+ }
+ }
+
if (seq->type == SEQ_TYPE_META && sequencer_check_scene_recursion(scene, &seq->seqbase)) {
return seq;
}