aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/qmmp/statehandler.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/qmmp/statehandler.cpp b/src/qmmp/statehandler.cpp
index ac9511a14..ef0a9b7fb 100644
--- a/src/qmmp/statehandler.cpp
+++ b/src/qmmp/statehandler.cpp
@@ -107,8 +107,11 @@ void StateHandler::dispatch(const QMap<Qmmp::MetaData, QString> &metaData)
m_mutex.unlock();
return;
}
- if (m_state == Qmmp::Playing && SoundCore::instance()->url() == metaData.value(Qmmp::URL))
+ if (m_state == Qmmp::Playing &&
+ (m_metaData.isEmpty() || m_metaData.value(Qmmp::URL) == metaData.value(Qmmp::URL)))
{
+ qDebug("sending meta data %s", qPrintable(SoundCore::instance()->url()));
+ qDebug("sending meta data 2%s", qPrintable(metaData.value(Qmmp::URL)));
if (m_metaData != tmp)
{
m_metaData = tmp;
@@ -150,6 +153,7 @@ void StateHandler::dispatch(Qmmp::State state)
m_mutex.unlock();
dispatch(m_cachedMetaData);
m_mutex.lock();
+ m_cachedMetaData.clear();
}
}
m_mutex.unlock();