diff options
| author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2020-03-11 01:00:24 +0100 |
|---|---|---|
| committer | Edward Welbourne <edward.welbourne@qt.io> | 2020-03-11 11:27:49 +0100 |
| commit | 116d68f105db025f56c1fd5115ff4924bc22d7c2 (patch) | |
| tree | ae04596b19c34eccc60ff7477da6a0166c5f82b1 /src/corelib/plugin/qpluginloader.cpp | |
| parent | 52de905d0ec6159d3a1e7ad63fed018b5c6973d2 (diff) | |
| parent | bd3c82f8db4391fc1d6d3338827356143fd598dd (diff) | |
Merge remote-tracking branch 'origin/5.14' into 5.15
Conflicts:
src/corelib/plugin/qlibrary.cpp
src/corelib/plugin/qlibrary_unix.cpp
src/corelib/plugin/qpluginloader.cpp
Change-Id: I866feaaa2a4936ee5389679724c8471a5b4b583d
Diffstat (limited to 'src/corelib/plugin/qpluginloader.cpp')
| -rw-r--r-- | src/corelib/plugin/qpluginloader.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/corelib/plugin/qpluginloader.cpp b/src/corelib/plugin/qpluginloader.cpp index f34578ea810..0a63b93762c 100644 --- a/src/corelib/plugin/qpluginloader.cpp +++ b/src/corelib/plugin/qpluginloader.cpp @@ -196,9 +196,7 @@ QObject *QPluginLoader::instance() { if (!isLoaded() && !load()) return nullptr; - if (!d->inst && d->instance) - d->inst = d->instance(); - return d->inst.data(); + return d->pluginInstance(); } /*! @@ -233,7 +231,7 @@ bool QPluginLoader::load() if (!d || d->fileName.isEmpty()) return false; if (did_load) - return d->pHnd && d->instance; + return d->pHnd && d->instanceFactory.loadAcquire(); if (!d->isPlugin()) return false; did_load = true; @@ -275,7 +273,7 @@ bool QPluginLoader::unload() */ bool QPluginLoader::isLoaded() const { - return d && d->pHnd && d->instance; + return d && d->pHnd && d->instanceFactory.loadRelaxed(); } #if defined(QT_SHARED) |
