diff options
-rw-r--r-- | src/plugins/opensles/qopenslesaudioinput.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/opensles/qopenslesaudioinput.cpp b/src/plugins/opensles/qopenslesaudioinput.cpp index c3f5ed422..ad87cb057 100644 --- a/src/plugins/opensles/qopenslesaudioinput.cpp +++ b/src/plugins/opensles/qopenslesaudioinput.cpp @@ -475,8 +475,11 @@ void QOpenSLESAudioInput::flushBuffers() qint64 delta = recorderPos * 1000 - devicePos; - if (delta > 0) - writeDataToDevice(m_buffers[m_currentBuffer].constData(), m_format.bytesForDuration(delta)); + if (delta > 0) { + const int writeSize = std::min(m_buffers[m_currentBuffer].size(), + m_format.bytesForDuration(delta)); + writeDataToDevice(m_buffers[m_currentBuffer].constData(), writeSize); + } } int QOpenSLESAudioInput::bytesReady() const |