summaryrefslogtreecommitdiff
path: root/src/libs/extensionsystem
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2017-10-19 13:34:41 +0200
committerEike Ziller <eike.ziller@qt.io>2017-10-19 15:58:02 +0000
commit30f0b6857a89f1ea9507fef5f03afb00cf792dae (patch)
treec3fd9beb73485c24a5ebc792155896facfb69f14 /src/libs/extensionsystem
parent56366cfd72cd43ce6d122a040831c3c32619dfea (diff)
downloadqt-creator-30f0b6857a89f1ea9507fef5f03afb00cf792dae.tar.gz
ExtensionSystem: Avoid using iterators from temporaries
Doing it can lead to unexpected results Change-Id: I602cf6a4692c9e0c0adb4564679478ea25bf8829 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Diffstat (limited to 'src/libs/extensionsystem')
-rw-r--r--src/libs/extensionsystem/pluginmanager.cpp2
-rw-r--r--src/libs/extensionsystem/pluginview.cpp5
2 files changed, 4 insertions, 3 deletions
diff --git a/src/libs/extensionsystem/pluginmanager.cpp b/src/libs/extensionsystem/pluginmanager.cpp
index fd554be585..92c02d85f1 100644
--- a/src/libs/extensionsystem/pluginmanager.cpp
+++ b/src/libs/extensionsystem/pluginmanager.cpp
@@ -442,7 +442,7 @@ QString PluginManager::systemInformation() const
if (response.result == SynchronousProcessResponse::Finished)
result += response.allOutput() + "\n";
result += "Plugin information:\n\n";
- auto longestSpec = std::max_element(plugins().cbegin(), plugins().cend(),
+ auto longestSpec = std::max_element(d->pluginSpecs.cbegin(), d->pluginSpecs.cend(),
[](const PluginSpec *left, const PluginSpec *right) {
return left->name().size() < right->name().size();
});
diff --git a/src/libs/extensionsystem/pluginview.cpp b/src/libs/extensionsystem/pluginview.cpp
index 96052579ee..ec9dd7d722 100644
--- a/src/libs/extensionsystem/pluginview.cpp
+++ b/src/libs/extensionsystem/pluginview.cpp
@@ -421,8 +421,9 @@ void PluginView::updatePlugins()
QList<CollectionItem *> collections;
- auto end = PluginManager::pluginCollections().cend();
- for (auto it = PluginManager::pluginCollections().cbegin(); it != end; ++it) {
+ const QHash<QString, QList<PluginSpec *>> pluginCollections = PluginManager::pluginCollections();
+ const auto end = pluginCollections.cend();
+ for (auto it = pluginCollections.cbegin(); it != end; ++it) {
const QString name = it.key().isEmpty() ? tr("Utilities") : it.key();
collections.append(new CollectionItem(name, it.value(), this));
}