summaryrefslogtreecommitdiffstats
path: root/src/imports/audioengine/qdeclarative_audiosample_p.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/imports/audioengine/qdeclarative_audiosample_p.cpp')
-rw-r--r--src/imports/audioengine/qdeclarative_audiosample_p.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/imports/audioengine/qdeclarative_audiosample_p.cpp b/src/imports/audioengine/qdeclarative_audiosample_p.cpp
index e95840711..5a9a67b71 100644
--- a/src/imports/audioengine/qdeclarative_audiosample_p.cpp
+++ b/src/imports/audioengine/qdeclarative_audiosample_p.cpp
@@ -153,7 +153,7 @@ bool QDeclarativeAudioSample::isLoaded() const
{
if (!m_soundBuffer)
return false;
- return m_soundBuffer->isReady();
+ return m_soundBuffer->state() == QSoundBuffer::Ready;
}
/*!
@@ -163,13 +163,12 @@ bool QDeclarativeAudioSample::isLoaded() const
*/
void QDeclarativeAudioSample::load()
{
- if (isLoaded())
- return;
if (!m_soundBuffer) {
m_preloaded = true;
return;
}
- m_soundBuffer->load();
+ if (m_soundBuffer->state() != QSoundBuffer::Loading && m_soundBuffer->state() != QSoundBuffer::Ready)
+ m_soundBuffer->load();
}
void QDeclarativeAudioSample::setPreloaded(bool preloaded)
@@ -218,7 +217,7 @@ void QDeclarativeAudioSample::init()
} else {
m_soundBuffer =
qobject_cast<QDeclarativeAudioEngine*>(parent())->engine()->getStaticSoundBuffer(m_url);
- if (m_soundBuffer->isReady()) {
+ if (m_soundBuffer->state() == QSoundBuffer::Ready) {
emit loadedChanged();
} else {
connect(m_soundBuffer, SIGNAL(ready()), this, SIGNAL(loadedChanged()));