diff options
author | Richard Antalik <richardantalik@gmail.com> | 2021-08-24 01:46:34 +0300 |
---|---|---|
committer | Richard Antalik <richardantalik@gmail.com> | 2021-08-24 01:46:34 +0300 |
commit | 24a3446787d31f9b32e6759f91349b598c8e9774 (patch) | |
tree | f4fd2f2a09ebacc67d4194ef00a4e87578f095a5 /source/blender/sequencer/SEQ_iterator.h | |
parent | a0c8ee057a59b8b514706a12257a6dc0f9bb3b69 (diff) |
Fix T90646: VSE hangs when strips overlap
When all strips are selected and overlap is caused, this causes VSE to
hang in infinite loop, because such situation should never happen.
To prevent infinite loop, ensure, that strip overlap is not tested
against single overlapping strip itself.
Prevent overlap that can not be handled because of issue described above
by moving overlapping strip between channels.
Reviewed By: campbellbarton
Differential Revision: D12209
Diffstat (limited to 'source/blender/sequencer/SEQ_iterator.h')
-rw-r--r-- | source/blender/sequencer/SEQ_iterator.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/source/blender/sequencer/SEQ_iterator.h b/source/blender/sequencer/SEQ_iterator.h index cb2091511a9..3ade7309f89 100644 --- a/source/blender/sequencer/SEQ_iterator.h +++ b/source/blender/sequencer/SEQ_iterator.h @@ -73,6 +73,7 @@ struct Sequence *SEQ_iterator_yield(SeqIterator *iterator); SeqCollection *SEQ_collection_create(const char *name); SeqCollection *SEQ_collection_duplicate(SeqCollection *collection); uint SEQ_collection_len(const SeqCollection *collection); +bool SEQ_collection_has_strip(const struct Sequence *seq, const SeqCollection *collection); bool SEQ_collection_append_strip(struct Sequence *seq, SeqCollection *data); bool SEQ_collection_remove_strip(struct Sequence *seq, SeqCollection *data); void SEQ_collection_free(SeqCollection *collection); |