diff options
Diffstat (limited to 'src/network/bearer/qbearerengine.cpp')
-rw-r--r-- | src/network/bearer/qbearerengine.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/network/bearer/qbearerengine.cpp b/src/network/bearer/qbearerengine.cpp index 677da08cb6..a7c139fe63 100644 --- a/src/network/bearer/qbearerengine.cpp +++ b/src/network/bearer/qbearerengine.cpp @@ -46,24 +46,23 @@ QT_BEGIN_NAMESPACE static void cleanUpConfigurations(QHash<QString, QNetworkConfigurationPrivatePointer> &configurations) { - for (const auto &ptr : qAsConst(configurations)) { + for (auto &ptr : qExchange(configurations, {})) { ptr->isValid = false; ptr->id.clear(); } - configurations.clear(); } static bool hasUsedConfiguration(const QHash<QString, QNetworkConfigurationPrivatePointer> &configurations) { auto isUsed = [](const QNetworkConfigurationPrivatePointer &ptr) { - return ptr->ref.load() > 1; + return ptr->ref.loadRelaxed() > 1; }; const auto end = configurations.end(); return std::find_if(configurations.begin(), end, isUsed) != end; } QBearerEngine::QBearerEngine(QObject *parent) - : QObject(parent), mutex(QMutex::Recursive) + : QObject(parent) { } |