┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/views/versioncontrol/versioncontrolobserver.cpp
diff options
context:
space:
mode:
authorEmmanuel Pescosta <[email protected]>2014-01-15 20:27:20 +0100
committerEmmanuel Pescosta <[email protected]>2014-01-15 20:27:20 +0100
commit8a46dd8d8e2374fda5a27d2079ef30722ee08000 (patch)
tree1e99573f0d8e14dd8f06240c011da80a5fb18329 /src/views/versioncontrol/versioncontrolobserver.cpp
parent3ff6e83491e2da9678af0bc149e450ff87db5e8d (diff)
Use the QMap iterator instead of foreach(key, map.keys()) in UpdateItemStatesThread::run()
and in VersionControlObserver::slotThreadFinished(). So we get O(n) complexity instead of O(n*logn), and O(1) memory instead of O(n). Thanks to Thiago Macieira for providing this information. FIXED-IN: 4.13 REVIEW: 115018
Diffstat (limited to 'src/views/versioncontrol/versioncontrolobserver.cpp')
-rw-r--r--src/views/versioncontrol/versioncontrolobserver.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/views/versioncontrol/versioncontrolobserver.cpp b/src/views/versioncontrol/versioncontrolobserver.cpp
index 4d939ee0d..c542542ee 100644
--- a/src/views/versioncontrol/versioncontrolobserver.cpp
+++ b/src/views/versioncontrol/versioncontrolobserver.cpp
@@ -205,8 +205,9 @@ void VersionControlObserver::slotThreadFinished()
}
const QMap<QString, QVector<ItemState> >& itemStates = thread->itemStates();
- foreach (const QString& directory, itemStates.keys()) {
- const QVector<ItemState>& items = itemStates.value(directory);
+ QMap<QString, QVector<ItemState> >::const_iterator it = itemStates.constBegin();
+ for (; it != itemStates.constEnd(); ++it) {
+ const QVector<ItemState>& items = it.value();
foreach (const ItemState& item, items) {
QHash<QByteArray, QVariant> values;