summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAaron McCarthy <aaron.mccarthy@nokia.com>2010-08-12 04:46:46 (GMT)
committerAaron McCarthy <aaron.mccarthy@nokia.com>2010-08-16 00:51:18 (GMT)
commitd4c8461db653e498b9369c2a36de5b699bcbf87d (patch)
tree675c4ebc1cb97df64b088a115dbf2295cb2345b5 /src
parent7c413e92841c7a6010c4ba5748f6f54448f8643e (diff)
downloadQt-d4c8461db653e498b9369c2a36de5b699bcbf87d.zip
Qt-d4c8461db653e498b9369c2a36de5b699bcbf87d.tar.gz
Qt-d4c8461db653e498b9369c2a36de5b699bcbf87d.tar.bz2
Release lock before calling into icd engine.
Diffstat (limited to 'src')
-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;