summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/bearer/icd/qnetworksession_impl.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/plugins/bearer/icd/qnetworksession_impl.cpp b/src/plugins/bearer/icd/qnetworksession_impl.cpp
index 0b35349..3170bf6 100644
--- a/src/plugins/bearer/icd/qnetworksession_impl.cpp
+++ b/src/plugins/bearer/icd/qnetworksession_impl.cpp
@@ -458,14 +458,15 @@ void QNetworkSessionPrivateImpl::syncStateWithInterface()
else
ptr->name = ptr->id;
+ const QString identifier = ptr->id;
+
+ configLocker.unlock();
+
// Add the new active configuration to manager or update the old config
- if (!engine->hasIdentifier(ptr->id)) {
- configLocker.unlock();
+ if (!engine->hasIdentifier(identifier))
engine->addSessionConfiguration(ptr);
- } else {
- configLocker.unlock();
+ else
engine->changedSessionConfiguration(ptr);
- }
}
break;