diff options
author | VaL Doroshchuk <valentyn.doroshchuk@qt.io> | 2020-01-16 17:00:22 +0100 |
---|---|---|
committer | VaL Doroshchuk <valentyn.doroshchuk@qt.io> | 2020-01-17 15:55:02 +0100 |
commit | d63921355aacf5cbd5189ffdbe4d23b9ff318bee (patch) | |
tree | 9c08c459fca394cb4e47a00b6e99fa592a12ec4e | |
parent | 8427c0be1c262293b27c8bca598108cfe882c84e (diff) |
Android: Fix loading multimedia plugins
Ater ec0e9f29dfd0b45edf5fd33e8ccf763e604612d7, the logic of accessing to
platform plugins has been changed.
For Android the plugin suffix is not allowed to have "subdirs" anymore
in QFactoryLoader. But some multimedia plugins are located in subdirs
like:
video/videonode or video/declarativevideobackend
And the plugin loader was not able to find plugins by filter:
libplugins_video/videonode_*.so
Fixes: QTBUG-81006
Change-Id: Ie5bcfa0792cdb67073f08917541ae89387f1c0b5
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
-rw-r--r-- | src/multimedia/qmediapluginloader.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/multimedia/qmediapluginloader.cpp b/src/multimedia/qmediapluginloader.cpp index 78ba3207f..88bd591c2 100644 --- a/src/multimedia/qmediapluginloader.cpp +++ b/src/multimedia/qmediapluginloader.cpp @@ -50,7 +50,11 @@ QT_BEGIN_NAMESPACE QMediaPluginLoader::QMediaPluginLoader(const char *iid, const QString &location, Qt::CaseSensitivity caseSensitivity): m_iid(iid) { +#if defined(Q_OS_ANDROID) + m_location = QString(location).replace(QLatin1Char('/'), QLatin1Char('_')); +#else m_location = QString::fromLatin1("/%1").arg(location); +#endif m_factoryLoader = new QFactoryLoader(m_iid, m_location, caseSensitivity); loadMetadata(); } |