summaryrefslogtreecommitdiffstats
path: root/src/corelib/plugin
diff options
context:
space:
mode:
authorAlex Blasche <alexander.blasche@qt.io>2020-06-02 14:11:17 +0200
committerAlex Blasche <alexander.blasche@qt.io>2020-06-03 09:06:50 +0200
commit5f7b771c4f455c82cb6d60a1d592471bc1ddd121 (patch)
tree0fe6272b20bc3ec96480e2ff1e2fd70e54f175f8 /src/corelib/plugin
parent43ae627f406bbdea1345b25292dda42045e7506e (diff)
Add missing lock in QFactoryLoader
libraryList is modified in a code section that was not yet properly locked. This was overlooked by 7ca66b1e66e73a0cb35705df04507ef9f3440cab. Task-number: QTBUG-42855 Change-Id: I028ad21a7df314133931f860ad49453bb2db9da0 Pick-to: 5.15 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'src/corelib/plugin')
-rw-r--r--src/corelib/plugin/qfactoryloader.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/corelib/plugin/qfactoryloader.cpp b/src/corelib/plugin/qfactoryloader.cpp
index b03ab4349b..582f48e93e 100644
--- a/src/corelib/plugin/qfactoryloader.cpp
+++ b/src/corelib/plugin/qfactoryloader.cpp
@@ -296,6 +296,7 @@ void QFactoryLoader::update()
}
if (keyUsageCount || keys.isEmpty()) {
library->setLoadHints(QLibrary::PreventUnloadHint); // once loaded, don't unload
+ QMutexLocker locker(&d->mutex);
d->libraryList += library;
} else {
library->release();