diff options
-rw-r--r-- | src/multimedia/audio/qsamplecache_p.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/multimedia/audio/qsamplecache_p.cpp b/src/multimedia/audio/qsamplecache_p.cpp index 6c4163080..ddb12b256 100644 --- a/src/multimedia/audio/qsamplecache_p.cpp +++ b/src/multimedia/audio/qsamplecache_p.cpp @@ -314,10 +314,14 @@ void QSample::release() void QSample::cleanup() { qCDebug(qLcSampleCache) << "QSample: cleanup"; - if (m_waveDecoder) + if (m_waveDecoder) { + m_waveDecoder->disconnect(this); m_waveDecoder->deleteLater(); - if (m_stream) + } + if (m_stream) { + m_stream->disconnect(this); m_stream->deleteLater(); + } m_waveDecoder = nullptr; m_stream = nullptr; |