Clean buffers before closing the input device.
Input device handle is invalid after waveInClose() QTBUG-24119 Change-Id: I8276e56766684efd26b78dc019ff871ebac28408 Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com> Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
This commit is contained in:
committed by
Qt by Nokia
parent
4d64345983
commit
23a81d62e7
@@ -335,6 +335,13 @@ void QAudioInputPrivate::close()
|
||||
|
||||
deviceState = QAudio::StoppedState;
|
||||
waveInReset(hWaveIn);
|
||||
|
||||
mutex.lock();
|
||||
for (int i=0; i<waveFreeBlockCount; i++)
|
||||
waveInUnprepareHeader(hWaveIn,&waveBlocks[i],sizeof(WAVEHDR));
|
||||
freeBlocks(waveBlocks);
|
||||
mutex.unlock();
|
||||
|
||||
waveInClose(hWaveIn);
|
||||
|
||||
int count = 0;
|
||||
@@ -342,12 +349,6 @@ void QAudioInputPrivate::close()
|
||||
count++;
|
||||
Sleep(10);
|
||||
}
|
||||
|
||||
mutex.lock();
|
||||
for(int i=0; i<waveFreeBlockCount; i++)
|
||||
waveInUnprepareHeader(hWaveIn,&waveBlocks[i],sizeof(WAVEHDR));
|
||||
freeBlocks(waveBlocks);
|
||||
mutex.unlock();
|
||||
}
|
||||
|
||||
int QAudioInputPrivate::bytesReady() const
|
||||
|
||||
Reference in New Issue
Block a user