diff options
| author | Carl Hetherington <cth@carlh.net> | 2020-01-27 23:19:52 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2020-01-28 21:58:47 +0100 |
| commit | 95f4d8740de74cdecf6658ab2607c0af9732904e (patch) | |
| tree | 3818062dcfe631dd2bd0b3d7ccfa3187867f948a /src/lib/audio_merger.cc | |
| parent | c93449bb6d866f6ff9cdc94ca9babdfd8b53c870 (diff) | |
Fix crash with sub-sample push parts in AudioMerger.v2.15.42
Forward-ported from b86b15391074a68149f8c4a51958c7873d74def0 in master.
Diffstat (limited to 'src/lib/audio_merger.cc')
| -rw-r--r-- | src/lib/audio_merger.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/lib/audio_merger.cc b/src/lib/audio_merger.cc index 1cc5ff0a1..667068f8f 100644 --- a/src/lib/audio_merger.cc +++ b/src/lib/audio_merger.cc @@ -138,9 +138,10 @@ AudioMerger::push (boost::shared_ptr<const AudioBuffers> audio, DCPTime time) part->copy_from (audio.get(), part->frames(), frames(DCPTime(i.from - time)), 0); if (before == _buffers.end() && after == _buffers.end()) { - /* New buffer */ - DCPOMATIC_ASSERT (part->frames() > 0); - _buffers.push_back (Buffer (part, time, _frame_rate)); + if (part->frames() > 0) { + /* New buffer */ + _buffers.push_back (Buffer (part, time, _frame_rate)); + } } else if (before != _buffers.end() && after == _buffers.end()) { /* We have an existing buffer before this one; append new data to it */ before->audio->append (part); |
