diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-08-08 20:46:47 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-08-08 20:46:47 +0400 |
commit | 748228d223d96690a606112c98db5c4a4b87ecb7 (patch) | |
tree | 11a2c081dceea70f59cce16f387e09aa7c0eaa86 /source/blender | |
parent | 7483429e62ed5fb17f74e85d24471c879acf9ed1 (diff) |
Sequencer: corrections to sequence cache invalidation
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/intern/sequencer.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/sequencer.c b/source/blender/blenkernel/intern/sequencer.c index 61b242d6c21..1882318f3ea 100644 --- a/source/blender/blenkernel/intern/sequencer.c +++ b/source/blender/blenkernel/intern/sequencer.c @@ -2792,7 +2792,7 @@ void BKE_sequence_invalidate_cache(Scene *scene, Sequence *seq) { Editing *ed = scene->ed; Sequence *cur; - int left = seq->start, right = seq->start + seq->len; + int left = seq->startdisp, right = seq->enddisp; /* invalidate cache for current sequence */ BKE_sequencer_cache_cleanup_sequence(seq); @@ -2800,7 +2800,10 @@ void BKE_sequence_invalidate_cache(Scene *scene, Sequence *seq) /* invalidate cache for all dependent sequences */ SEQ_BEGIN (ed, cur) { - int cur_left = cur->start, cur_right = cur->start + cur->len; + int cur_left = cur->startdisp, cur_right = cur->enddisp; + + if (cur == seq) + continue; /* sequence is outside of changed one, shouldn't be invalidated */ if (cur_right < left || cur_left > right) |