From 35b0ecf5da40feac0e7b43d928b60402d75d95d1 Mon Sep 17 00:00:00 2001 From: Anton Kudryavtsev Date: Fri, 4 Mar 2016 10:51:12 +0300 Subject: QtNetwork: replace Java-style iterators ... with STL-style iterators or with algorithms. Java-style iterators have overhead. Introduce local template separate_if algorithm from kleopatra project to simplify current code. http://api.kde.org/4.3-api/kdepim-apidocs/kleopatra/html Done-with: Marc Mutz Change-Id: Ib154f80f46f8041d9cafd81bed0e1982b21541cf Reviewed-by: Edward Welbourne Reviewed-by: Marc Mutz --- src/network/bearer/qnetworkconfiguration.cpp | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'src/network/bearer') diff --git a/src/network/bearer/qnetworkconfiguration.cpp b/src/network/bearer/qnetworkconfiguration.cpp index 3a0feb7d13..533a27357c 100644 --- a/src/network/bearer/qnetworkconfiguration.cpp +++ b/src/network/bearer/qnetworkconfiguration.cpp @@ -384,25 +384,21 @@ QList QNetworkConfiguration::children() const if (d->type != QNetworkConfiguration::ServiceNetwork || !d->isValid) return results; - QMutableMapIterator i(d->serviceNetworkMembers); - while (i.hasNext()) { - i.next(); - - QNetworkConfigurationPrivatePointer p = i.value(); - + for (auto it = d->serviceNetworkMembers.begin(), end = d->serviceNetworkMembers.end(); it != end;) { + QNetworkConfigurationPrivatePointer p = it.value(); //if we have an invalid member get rid of it -> was deleted earlier on { QMutexLocker childLocker(&p->mutex); if (!p->isValid) { - i.remove(); + it = d->serviceNetworkMembers.erase(it); continue; } } - QNetworkConfiguration item; item.d = p; results << item; + ++it; } return results; -- cgit v1.2.3