Commit: 1dcf0f9cf11808a9659b456a424a6ac5e04257e6 Author: Richard Antalik Date: Fri Jul 16 19:04:49 2021 +0200 Branches: master https://developer.blender.org/rB1dcf0f9cf11808a9659b456a424a6ac5e04257e6
Fix T89722: Duplicate macro can cause strips to overlap Bug caused by 78693d524c13 accidentally removing overlap handling when transform operator is canceled. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D11899 =================================================================== M source/blender/editors/transform/transform_convert_sequencer.c =================================================================== diff --git a/source/blender/editors/transform/transform_convert_sequencer.c b/source/blender/editors/transform/transform_convert_sequencer.c index a6f5aba5a1d..17512c79d03 100644 --- a/source/blender/editors/transform/transform_convert_sequencer.c +++ b/source/blender/editors/transform/transform_convert_sequencer.c @@ -262,8 +262,16 @@ static void free_transform_custom_data(TransCustomData *custom_data) /* Canceled, need to update the strips display. */ static void seq_transform_cancel(TransInfo *t, SeqCollection *transformed_strips) { + ListBase *seqbase = SEQ_active_seqbase_get(SEQ_editing_get(t->scene, false)); + Sequence *seq; SEQ_ITERATOR_FOREACH (seq, transformed_strips) { + /* Handle pre-existing overlapping strips even when operator is canceled. + * This is necessary for SEQUENCER_OT_duplicate_move macro for example. */ + if (SEQ_transform_test_overlap(seqbase, seq)) { + SEQ_transform_seqbase_shuffle(seqbase, seq, t->scene); + } + SEQ_time_update_sequence_bounds(t->scene, seq); } } _______________________________________________ Bf-blender-cvs mailing list [email protected] List details, subscription details or unsubscribe: https://lists.blender.org/mailman/listinfo/bf-blender-cvs
