diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2019-01-11 22:03:42 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2019-01-11 22:03:42 +0300 |
commit | ee34275e7da798a1cc9c398ac9bba68ad3343c1b (patch) | |
tree | f039058be6f8f4aa41cdde2a8540430d8f0f4df3 /source/blender/editors/space_sequencer | |
parent | bb9c9d0eaaab836b8f20ab7b2228795f607b823a (diff) | |
parent | 1ded3d2f7c04100698afdee356e2ba8d4ae2d6bd (diff) |
Merge branch 'blender2.7'
Diffstat (limited to 'source/blender/editors/space_sequencer')
-rw-r--r-- | source/blender/editors/space_sequencer/sequencer_edit.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/source/blender/editors/space_sequencer/sequencer_edit.c b/source/blender/editors/space_sequencer/sequencer_edit.c index b6f8552bd81..f0d5d6d00f7 100644 --- a/source/blender/editors/space_sequencer/sequencer_edit.c +++ b/source/blender/editors/space_sequencer/sequencer_edit.c @@ -667,7 +667,7 @@ static void recurs_del_seq_flag(Scene *scene, ListBase *lb, short flag, short de } -static Sequence *cut_seq_hard(Scene *scene, Sequence *seq, int cutframe) +static Sequence *cut_seq_hard(Scene *scene, Sequence *seq, ListBase *new_seq_list, int cutframe) { TransSeq ts; Sequence *seqn = NULL; @@ -739,7 +739,7 @@ static Sequence *cut_seq_hard(Scene *scene, Sequence *seq, int cutframe) if (!skip_dup) { /* Duplicate AFTER the first change */ - seqn = BKE_sequence_dupli_recursive(scene, scene, seq, SEQ_DUPE_ANIM); + seqn = BKE_sequence_dupli_recursive(scene, scene, new_seq_list, seq, SEQ_DUPE_UNIQUE_NAME | SEQ_DUPE_ANIM); } if (seqn) { @@ -788,7 +788,7 @@ static Sequence *cut_seq_hard(Scene *scene, Sequence *seq, int cutframe) return seqn; } -static Sequence *cut_seq_soft(Scene *scene, Sequence *seq, int cutframe) +static Sequence *cut_seq_soft(Scene *scene, Sequence *seq, ListBase *new_seq_list, int cutframe) { TransSeq ts; Sequence *seqn = NULL; @@ -848,7 +848,7 @@ static Sequence *cut_seq_soft(Scene *scene, Sequence *seq, int cutframe) if (!skip_dup) { /* Duplicate AFTER the first change */ - seqn = BKE_sequence_dupli_recursive(scene, scene, seq, SEQ_DUPE_ANIM); + seqn = BKE_sequence_dupli_recursive(scene, scene, new_seq_list, seq, SEQ_DUPE_UNIQUE_NAME | SEQ_DUPE_ANIM); } if (seqn) { @@ -900,7 +900,7 @@ static Sequence *cut_seq_soft(Scene *scene, Sequence *seq, int cutframe) */ static bool cut_seq_list(Scene *scene, ListBase *slist, int cutframe, - Sequence * (*cut_seq)(Scene *, Sequence *, int)) + Sequence * (*cut_seq)(Scene *, Sequence *, ListBase *, int)) { Sequence *seq, *seq_next_iter; Sequence *seq_first_new = NULL; @@ -914,9 +914,8 @@ static bool cut_seq_list(Scene *scene, ListBase *slist, int cutframe, if (cutframe > seq->startdisp && cutframe < seq->enddisp) { - Sequence *seqn = cut_seq(scene, seq, cutframe); + Sequence *seqn = cut_seq(scene, seq, slist, cutframe); if (seqn) { - BLI_addtail(slist, seqn); if (seq_first_new == NULL) { seq_first_new = seqn; } @@ -2089,7 +2088,6 @@ static int sequencer_cut_exec(bContext *C, wmOperator *op) SEQP_BEGIN (ed, seq) { - BKE_sequence_base_unique_name_recursive(&ed->seqbase, seq); if (seq->seq1 || seq->seq2 || seq->seq3) { BKE_sequence_calc(scene, seq); } @@ -2391,8 +2389,7 @@ static int sequencer_separate_images_exec(bContext *C, wmOperator *op) /* new seq */ se = BKE_sequencer_give_stripelem(seq, cfra); - seq_new = BKE_sequence_dupli_recursive(scene, scene, seq, SEQ_DUPE_UNIQUE_NAME); - BLI_addtail(ed->seqbasep, seq_new); + seq_new = BKE_sequence_dupli_recursive(scene, scene, ed->seqbasep, seq, SEQ_DUPE_UNIQUE_NAME); seq_new->start = start_ofs; seq_new->type = SEQ_TYPE_IMAGE; |