summaryrefslogtreecommitdiffstats
path: root/src/corelib/plugin/qpluginloader.cpp
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2023-03-25 13:27:59 -0400
committerThiago Macieira <thiago.macieira@intel.com>2023-03-28 04:29:22 -0400
commit5f23f7f416493fd52f794b1aae311ba9ca86b1c7 (patch)
tree2388c4093169e0e5aab189f4faae900fdb946dba /src/corelib/plugin/qpluginloader.cpp
parent90d7fd58229d3b3fe04762ac53f686748c10a723 (diff)
QPluginLoader: modernize static plugin instance code
- don't create the QGlobalStatic if it doesn't exist yet - remove int-based iteration in favor of range-based for Pick-to: 6.2 6.5 Change-Id: Idd5e1bb52be047d7b4fffffd174fb99f4557defe Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'src/corelib/plugin/qpluginloader.cpp')
-rw-r--r--src/corelib/plugin/qpluginloader.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/corelib/plugin/qpluginloader.cpp b/src/corelib/plugin/qpluginloader.cpp
index 599256783ef..e07f1c2774b 100644
--- a/src/corelib/plugin/qpluginloader.cpp
+++ b/src/corelib/plugin/qpluginloader.cpp
@@ -390,12 +390,11 @@ void Q_CORE_EXPORT qRegisterStaticPluginFunction(QStaticPlugin plugin)
QObjectList QPluginLoader::staticInstances()
{
QObjectList instances;
- const StaticPluginList *plugins = staticPluginList();
- if (plugins) {
- const int numPlugins = plugins->size();
- instances.reserve(numPlugins);
- for (int i = 0; i < numPlugins; ++i)
- instances += plugins->at(i).instance();
+ if (staticPluginList.exists()) {
+ const StaticPluginList &plugins = *staticPluginList;
+ instances.reserve(plugins.size());
+ for (QStaticPlugin plugin : plugins)
+ instances += plugin.instance();
}
return instances;
}