[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [58561] trunk/blender/source/blender/ editors/space_sequencer/sequencer_edit.c: pasting strips in the sequencer didn' t check if they overlap existing strips.
Campbell Barton
ideasman42 at gmail.com
Wed Jul 24 07:01:22 CEST 2013
Revision: 58561
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58561
Author: campbellbarton
Date: 2013-07-24 05:01:22 +0000 (Wed, 24 Jul 2013)
Log Message:
-----------
pasting strips in the sequencer didn't check if they overlap existing strips.
Modified Paths:
--------------
trunk/blender/source/blender/editors/space_sequencer/sequencer_edit.c
Modified: trunk/blender/source/blender/editors/space_sequencer/sequencer_edit.c
===================================================================
--- trunk/blender/source/blender/editors/space_sequencer/sequencer_edit.c 2013-07-24 04:49:26 UTC (rev 58560)
+++ trunk/blender/source/blender/editors/space_sequencer/sequencer_edit.c 2013-07-24 05:01:22 UTC (rev 58561)
@@ -2794,7 +2794,7 @@
Editing *ed = BKE_sequencer_editing_get(scene, TRUE); /* create if needed */
ListBase nseqbase = {NULL, NULL};
int ofs;
- Sequence *iseq;
+ Sequence *iseq, *iseq_first;
ED_sequencer_deselect_all(scene);
ofs = scene->r.cfra - seqbase_clipboard_frame;
@@ -2809,15 +2809,22 @@
}
}
- iseq = nseqbase.first;
+ iseq_first = nseqbase.first;
BLI_movelisttolist(ed->seqbasep, &nseqbase);
/* make sure the pasted strips have unique names between them */
- for (; iseq; iseq = iseq->next) {
+ for (iseq = iseq_first; iseq; iseq = iseq->next) {
BKE_sequencer_recursive_apply(iseq, apply_unique_name_cb, scene);
}
+ /* ensure pasted strips don't overlap */
+ for (iseq = iseq_first; iseq; iseq = iseq->next) {
+ if (BKE_sequence_test_overlap(ed->seqbasep, iseq)) {
+ BKE_sequence_base_shuffle(ed->seqbasep, iseq, scene);
+ }
+ }
+
WM_event_add_notifier(C, NC_SCENE | ND_SEQUENCER, scene);
return OPERATOR_FINISHED;
More information about the Bf-blender-cvs
mailing list