diff options
author | Campbell Barton <ideasman42@gmail.com> | 2016-03-21 11:22:39 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2016-03-21 11:40:41 +0300 |
commit | 112300a982380c0b87cc1836d83143c902afad14 (patch) | |
tree | 8c584c8c5f0cc4cc2ba7561dfe6f1348b38f91d5 /source | |
parent | f4840e878b95e87d60a8b66fad9a5777ce380dc5 (diff) |
Fix T47862: VSE hard cut fails
Regression caused by changing how video length is calculated,
however similar problems could be caused by strip length changing on-disk.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/editors/space_sequencer/sequencer_edit.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source/blender/editors/space_sequencer/sequencer_edit.c b/source/blender/editors/space_sequencer/sequencer_edit.c index c0a95225f5b..df3e508ae0e 100644 --- a/source/blender/editors/space_sequencer/sequencer_edit.c +++ b/source/blender/editors/space_sequencer/sequencer_edit.c @@ -685,6 +685,14 @@ static Sequence *cut_seq_hard(Scene *scene, Sequence *seq, int cutframe) /* First Strip! */ /* strips with extended stillfames before */ + /* Precaution, needed because the length saved on-disk may not match the length saved in the blend file, + * or our code may have minor differences reading file length between versions. + * This causes hard-cut to fail, see: T47862 */ + if (seq->type != SEQ_TYPE_META) { + BKE_sequence_reload_new_file(scene, seq, true); + BKE_sequence_calc(scene, seq); + } + if ((seq->startstill) && (cutframe < seq->start)) { /* don't do funny things with METAs ... */ if (seq->type == SEQ_TYPE_META) { |