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:
authorCampbell Barton <ideasman42@gmail.com>2012-02-03 05:06:32 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-02-03 05:06:32 +0400
commit050963b6a9529e0abdd597d163ddc4343c0b15c2 (patch)
tree336496eb8b1e59bc6ec2f9cd6a632f4938c0422b /source/blender/editors
parent07919930300e6055c5452ec2b54150e70babd5fe (diff)
fix [#27953] VSE: weird drawing and placement issues strips during 'E'
was calculating meta / effect in wrong order causing delay, now calculate selected meta's, then all effects after tramsforming.
Diffstat (limited to 'source/blender/editors')
-rw-r--r--source/blender/editors/transform/transform_conversions.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index ced6bb8da63..86b5ab9421b 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -2303,12 +2303,17 @@ void flushTransSeq(TransInfo *t)
if (ELEM(t->mode, TFM_SEQ_SLIDE, TFM_TIME_TRANSLATE)) { /* originally TFM_TIME_EXTEND, transform changes */
/* Special annoying case here, need to calc metas with TFM_TIME_EXTEND only */
- seq= seqbasep->first;
- while(seq) {
- if (seq->type == SEQ_META && seq->flag & SELECT)
+ /* calc all meta's then effects [#27953] */
+ for (seq = seqbasep->first; seq; seq = seq->next) {
+ if (seq->type == SEQ_META && seq->flag & SELECT) {
calc_sequence(t->scene, seq);
- seq= seq->next;
+ }
+ }
+ for (seq = seqbasep->first; seq; seq = seq->next) {
+ if (seq->seq1 || seq->seq2 || seq->seq3) {
+ calc_sequence(t->scene, seq);
+ }
}
}