From 5e09399775bbcdfae9a89f0010000e97ff8d23ae Mon Sep 17 00:00:00 2001 From: Dominik Holland Date: Tue, 10 Oct 2017 15:33:14 +0200 Subject: Fix crash in the indexer caused by QtMultimedia not being thread-safe Also register the IndexerStatus enum to make it work over thread boundaries. Change-Id: I80a955c488a41599dc87ca167e6465269600db67 Reviewed-by: Robert Griebl --- src/ivimedia/qivimediaindexercontrol.cpp | 1 + src/plugins/ivimedia/media_simulator/mediaindexerbackend.cpp | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/ivimedia/qivimediaindexercontrol.cpp b/src/ivimedia/qivimediaindexercontrol.cpp index baae4bb..fba42fe 100644 --- a/src/ivimedia/qivimediaindexercontrol.cpp +++ b/src/ivimedia/qivimediaindexercontrol.cpp @@ -137,6 +137,7 @@ QIviMediaIndexerControlBackendInterface *QIviMediaIndexerControlPrivate::indexer QIviMediaIndexerControl::QIviMediaIndexerControl(QObject *parent) : QIviAbstractFeature(*new QIviMediaIndexerControlPrivate(QLatin1String(QIviMediaIndexer_iid), this), parent) { + qRegisterMetaType(); } /*! diff --git a/src/plugins/ivimedia/media_simulator/mediaindexerbackend.cpp b/src/plugins/ivimedia/media_simulator/mediaindexerbackend.cpp index 06c7d30..faba4c7 100644 --- a/src/plugins/ivimedia/media_simulator/mediaindexerbackend.cpp +++ b/src/plugins/ivimedia/media_simulator/mediaindexerbackend.cpp @@ -143,7 +143,9 @@ bool MediaIndexerBackend::scanWorker(const QString &mediaDir, bool removeData) qInfo() << "Scanning path: " << mediaDir; +#ifndef QT_TAGLIB QMediaPlayer player; +#endif QSqlQuery query(m_db); bool ret = query.exec("CREATE TABLE IF NOT EXISTS track " -- cgit v1.2.1