Fix crash with sub-sample push parts in AudioMerger.
[dcpomatic.git] / src / lib / audio_merger.cc
index 1cc5ff0a19de156bdee0e7e6a6dd3da56e47dc49..667068f8ff2a284f6f64e5d5fc3374440d970b8d 100644 (file)
@@ -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);