diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2016-01-26 19:45:58 +0100 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> | 2016-08-02 07:55:26 +0000 |
commit | ccdcbc55caec3e7142c15c9c492afa4be174d730 (patch) | |
tree | 09f9f89a4c40ba24e24ac03c83531409a29e5f52 | |
parent | 5c812f77e2eb87365235ea310f05e5daaa86d972 (diff) | |
download | qt-creator-ccdcbc55caec3e7142c15c9c492afa4be174d730.tar.gz |
qmake: don't iterate over .keys()
... iterate over the container itself instead. Avoids
temporary QList creation as well as the lookup cost
when actually calling value(key).
Change-Id: Icac867c30e63863cfa44a382eedd4d6df2070a59
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
(cherry picked from qtbase/c9cb20c01a0f3fa93ff9f79fd7ea3f53939497c4)
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
-rw-r--r-- | src/shared/proparser/qmakebuiltins.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/shared/proparser/qmakebuiltins.cpp b/src/shared/proparser/qmakebuiltins.cpp index d3fd28184c..aca42342b5 100644 --- a/src/shared/proparser/qmakebuiltins.cpp +++ b/src/shared/proparser/qmakebuiltins.cpp @@ -303,8 +303,8 @@ static void addJsonArray(const QJsonArray &array, const QString &keyPrefix, ProV static void addJsonObject(const QJsonObject &object, const QString &keyPrefix, ProValueMap *map) { - foreach (const QString &key, object.keys()) - addJsonValue(object.value(key), keyPrefix + key, map); + for (auto it = object.begin(), end = object.end(); it != end; ++it) + addJsonValue(it.value(), keyPrefix + it.key(), map); insertJsonKeyValue(keyPrefix + QLatin1String("_KEYS_"), object.keys(), map); } |