aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/qmmp/metadatamanager.cpp2
-rw-r--r--src/qmmp/metadatamanager.h3
2 files changed, 5 insertions, 0 deletions
diff --git a/src/qmmp/metadatamanager.cpp b/src/qmmp/metadatamanager.cpp
index 667d9bdff..c78426974 100644
--- a/src/qmmp/metadatamanager.cpp
+++ b/src/qmmp/metadatamanager.cpp
@@ -20,6 +20,7 @@
#include <QFile>
#include <QFileInfo>
+#include <QMutexLocker>
#include "decoder.h"
#include "decoderfactory.h"
#include "abstractengine.h"
@@ -47,6 +48,7 @@ MetaDataManager::~MetaDataManager()
QList <FileInfo *> MetaDataManager::createPlayList(const QString &fileName, bool useMetaData) const
{
+ QMutexLocker locker(&m_mutex);
QList <FileInfo *> list;
DecoderFactory *fact = 0;
EngineFactory *efact = 0;
diff --git a/src/qmmp/metadatamanager.h b/src/qmmp/metadatamanager.h
index 5e40894be..09417903e 100644
--- a/src/qmmp/metadatamanager.h
+++ b/src/qmmp/metadatamanager.h
@@ -25,6 +25,7 @@
#include <QStringList>
#include <QPixmap>
#include <QDir>
+#include <QMutex>
#include "fileinfo.h"
#include "metadatamodel.h"
@@ -33,6 +34,7 @@ class EngineFactory;
class InputSourceFactory;
class QmmpSettings;
+
/*! @brief The MetaDataManager class is the base class for metadata access.
* @author Ilya Kotov <forkotov02@hotmail.ru>
*/
@@ -108,6 +110,7 @@ private:
QList <InputSourceFactory *> *m_inputSourceFactories;
QMap <QString, QString> m_cover_cache;
QmmpSettings *m_settings;
+ mutable QMutex m_mutex;
static MetaDataManager* m_instance;
};