summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGareth Stockwell <ext-gareth.stockwell@nokia.com>2010-09-01 12:49:54 (GMT)
committerGareth Stockwell <ext-gareth.stockwell@nokia.com>2010-09-17 12:33:11 (GMT)
commit1f3c8e102c026b7bfb163234a8f87cc0b6863246 (patch)
tree06cc5e35e0b57c6ea886eb6a72318a83373c7ce8
parent7ed96ae38b3eaee5988ac4d4717ff5c7611d0f15 (diff)
downloadQt-1f3c8e102c026b7bfb163234a8f87cc0b6863246.zip
Qt-1f3c8e102c026b7bfb163234a8f87cc0b6863246.tar.gz
Qt-1f3c8e102c026b7bfb163234a8f87cc0b6863246.tar.bz2
Discard empty buffer on call to QAudioOutput::resume()
The Symbian backend holds buffers which are passed to it from DevSound, exposing the memory of these buffers via the QIODevice interface. When QAudioOutput::resume() is called, the backend re-starts data flow by passing the buffer it holds back to DevSound. Previously, this would not happen if the buffer was empty, potentially causing playback to stall. This patch ensures that the buffer is always sent back to DevSound, and data flow therefore always resumes. Task-number: QTBUG-13059 Reviewed-by: Derick Hawcroft
-rw-r--r--src/multimedia/audio/qaudiooutput_symbian_p.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/multimedia/audio/qaudiooutput_symbian_p.cpp b/src/multimedia/audio/qaudiooutput_symbian_p.cpp
index 5098469..5054ae3 100644
--- a/src/multimedia/audio/qaudiooutput_symbian_p.cpp
+++ b/src/multimedia/audio/qaudiooutput_symbian_p.cpp
@@ -210,7 +210,7 @@ void QAudioOutputPrivate::suspend()
void QAudioOutputPrivate::resume()
{
if (SymbianAudio::SuspendedState == m_internalState) {
- if (!m_pullMode && m_devSoundBuffer && m_devSoundBuffer->Data().Length())
+ if (!m_pullMode && m_devSoundBuffer)
bufferFilled();
startPlayback();
}