diff options
author | Anton Kudryavtsev <a.kudryavtsev@netris.ru> | 2016-01-14 16:19:41 +0300 |
---|---|---|
committer | Anton Kudryavtsev <a.kudryavtsev@netris.ru> | 2016-01-15 11:28:51 +0000 |
commit | fad740822e13225f9cd9d567a346b4f2b7d6f65a (patch) | |
tree | 63cb777b9f671ed56f130a3bae67ddd9d591bbaa /src/positioning/qgeosatelliteinfosource.cpp | |
parent | a756c0a88b43c4b7251d6b2b95acddbe3af26932 (diff) | |
download | qtlocation-fad740822e13225f9cd9d567a346b4f2b7d6f65a.tar.gz |
fix expensive iteration over QMap::keys(), QHash::keys()
... and QJsonObject::keys()
Change-Id: I9a8ba44406a1e2cbdfffd266d2b5cb664f7440fc
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Diffstat (limited to 'src/positioning/qgeosatelliteinfosource.cpp')
-rw-r--r-- | src/positioning/qgeosatelliteinfosource.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/positioning/qgeosatelliteinfosource.cpp b/src/positioning/qgeosatelliteinfosource.cpp index da6eb8a0..e8a32d59 100644 --- a/src/positioning/qgeosatelliteinfosource.cpp +++ b/src/positioning/qgeosatelliteinfosource.cpp @@ -219,11 +219,11 @@ QGeoSatelliteInfoSource *QGeoSatelliteInfoSource::createSource(const QString &so QStringList QGeoSatelliteInfoSource::availableSources() { QStringList plugins; - QHash<QString, QJsonObject> meta = QGeoPositionInfoSourcePrivate::plugins(); - foreach (const QString &name, meta.keys()) { - if (meta.value(name).value(QStringLiteral("Satellite")).isBool() - && meta.value(name).value(QStringLiteral("Satellite")).toBool()) { - plugins << name; + const QHash<QString, QJsonObject> meta = QGeoPositionInfoSourcePrivate::plugins(); + for (auto it = meta.cbegin(), end = meta.cend(); it != end; ++it) { + if (it.value().value(QStringLiteral("Satellite")).isBool() + && it.value().value(QStringLiteral("Satellite")).toBool()) { + plugins << it.key(); } } |