diff options
Diffstat (limited to 'libs/ardour/audio_port.cc')
-rw-r--r-- | libs/ardour/audio_port.cc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libs/ardour/audio_port.cc b/libs/ardour/audio_port.cc index e2bb20dbe9..33e41c10ad 100644 --- a/libs/ardour/audio_port.cc +++ b/libs/ardour/audio_port.cc @@ -59,8 +59,11 @@ void AudioPort::cycle_end (pframes_t nframes) { if (sends_output() && !_buffer->written()) { - if (_buffer->capacity() >= nframes) { - _buffer->silence (nframes); + if (!_buffer->data (0)) { + get_audio_buffer (nframes); + } + if (_buffer->capacity() >= nframes) { + _buffer->silence (nframes); } } } |