summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@theqtcompany.com>2016-01-19 09:50:11 +0100
committerLiang Qi <liang.qi@theqtcompany.com>2016-01-19 09:50:11 +0100
commit02b8c7527a88d1cfaed296b856fce63fd62a6c9e (patch)
tree145ab0eb1bee64b07097279360c3bd66ab061c59
parentc9a841a37614cc2b4f70df935fc097d4627f04a3 (diff)
parent8d84a30e4d5ebec6e9c921ca855fc0cc5f1d9269 (diff)
downloadqtmultimedia-02b8c7527a88d1cfaed296b856fce63fd62a6c9e.tar.gz
Merge remote-tracking branch 'origin/5.5' into 5.6
Change-Id: I01940fe4f3d059fbb425492a1748e2b5d9b6804b
-rw-r--r--src/multimedia/audio/qsoundeffect_qaudio_p.cpp3
-rw-r--r--src/plugins/windowsaudio/qwindowsaudioinput.cpp2
-rw-r--r--src/plugins/windowsaudio/qwindowsaudiooutput.cpp2
-rw-r--r--tests/auto/integration/qaudiooutput/tst_qaudiooutput.cpp2
-rw-r--r--tests/auto/integration/qml/soundeffect/tst_soundeffect.qml1
-rw-r--r--tests/auto/integration/qsoundeffect/tst_qsoundeffect.cpp8
6 files changed, 8 insertions, 10 deletions
diff --git a/src/multimedia/audio/qsoundeffect_qaudio_p.cpp b/src/multimedia/audio/qsoundeffect_qaudio_p.cpp
index 77ed48b4a..adb334dd6 100644
--- a/src/multimedia/audio/qsoundeffect_qaudio_p.cpp
+++ b/src/multimedia/audio/qsoundeffect_qaudio_p.cpp
@@ -353,7 +353,8 @@ void PrivateSoundSource::stateChanged(QAudio::State state)
#ifdef QT_QAUDIO_DEBUG
qDebug() << this << "stateChanged " << state;
#endif
- if (state == QAudio::IdleState && m_runningCount == 0)
+ if ((state == QAudio::IdleState && m_runningCount == 0)
+ || (state == QAudio::StoppedState && m_audioOutput->error() != QAudio::NoError))
emit soundeffect->stop();
}
diff --git a/src/plugins/windowsaudio/qwindowsaudioinput.cpp b/src/plugins/windowsaudio/qwindowsaudioinput.cpp
index 788db2d25..72978aecb 100644
--- a/src/plugins/windowsaudio/qwindowsaudioinput.cpp
+++ b/src/plugins/windowsaudio/qwindowsaudioinput.cpp
@@ -90,7 +90,7 @@ void QT_WIN_CALLBACK QWindowsAudioInput::waveInProc( HWAVEIN hWaveIn, UINT uMsg,
if(!qAudio)
return;
- QMutexLocker(&qAudio->mutex);
+ QMutexLocker locker(&qAudio->mutex);
switch(uMsg) {
case WIM_OPEN:
diff --git a/src/plugins/windowsaudio/qwindowsaudiooutput.cpp b/src/plugins/windowsaudio/qwindowsaudiooutput.cpp
index 68e58646d..7e2205dea 100644
--- a/src/plugins/windowsaudio/qwindowsaudiooutput.cpp
+++ b/src/plugins/windowsaudio/qwindowsaudiooutput.cpp
@@ -90,7 +90,7 @@ void CALLBACK QWindowsAudioOutput::waveOutProc( HWAVEOUT hWaveOut, UINT uMsg,
if(!qAudio)
return;
- QMutexLocker(&qAudio->mutex);
+ QMutexLocker locker(&qAudio->mutex);
switch(uMsg) {
case WOM_OPEN:
diff --git a/tests/auto/integration/qaudiooutput/tst_qaudiooutput.cpp b/tests/auto/integration/qaudiooutput/tst_qaudiooutput.cpp
index 81aa97d91..07043e9ce 100644
--- a/tests/auto/integration/qaudiooutput/tst_qaudiooutput.cpp
+++ b/tests/auto/integration/qaudiooutput/tst_qaudiooutput.cpp
@@ -702,11 +702,11 @@ void tst_QAudioOutput::push()
QVERIFY2((audioOutput.state() == QAudio::ActiveState), "didn't transition to ActiveState after receiving data");
QVERIFY2((audioOutput.error() == QAudio::NoError), "error state is not equal to QAudio::NoError after receiving data");
firstBuffer = false;
+ stateSignal.clear();
}
} else
QTest::qWait(20);
}
- stateSignal.clear();
// Wait until playback finishes
QTest::qWait(3000); // 3 seconds should be plenty
diff --git a/tests/auto/integration/qml/soundeffect/tst_soundeffect.qml b/tests/auto/integration/qml/soundeffect/tst_soundeffect.qml
index 17908af94..f39dc1f75 100644
--- a/tests/auto/integration/qml/soundeffect/tst_soundeffect.qml
+++ b/tests/auto/integration/qml/soundeffect/tst_soundeffect.qml
@@ -134,7 +134,6 @@ Item {
verify(sound1.muted == false)
verify(sound1.playing == false)
verify(sound1.status == 1) // Status.Loading
- verify(sound1.category == "")
}
function test_muting() {
diff --git a/tests/auto/integration/qsoundeffect/tst_qsoundeffect.cpp b/tests/auto/integration/qsoundeffect/tst_qsoundeffect.cpp
index 642c00ceb..604607ab0 100644
--- a/tests/auto/integration/qsoundeffect/tst_qsoundeffect.cpp
+++ b/tests/auto/integration/qsoundeffect/tst_qsoundeffect.cpp
@@ -150,8 +150,7 @@ void tst_QSoundEffect::testLooping()
QCOMPARE(readSignal_Remaining.count(), 0);
sound->play();
- QCOMPARE(sound->loopsRemaining(), 5);
- QCOMPARE(readSignal_Remaining.count(), 1);
+ QVERIFY(readSignal_Remaining.count() > 0);
// test.wav is about 200ms, wait until it has finished playing 5 times
QTestEventLoop::instance().enterLoop(3);
@@ -172,11 +171,10 @@ void tst_QSoundEffect::testLooping()
QCOMPARE(readSignal_Remaining.count(), 0);
sound->play();
- QCOMPARE(sound->loopsRemaining(), 30);
- QCOMPARE(readSignal_Remaining.count(), 1);
+ QVERIFY(readSignal_Remaining.count() > 0);
// wait for the sound to be played several times
- QTRY_COMPARE(sound->loopsRemaining(), 20);
+ QTRY_VERIFY(sound->loopsRemaining() <= 20);
QVERIFY(readSignal_Remaining.count() >= 10);
readSignal_Count.clear();
readSignal_Remaining.clear();