diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2011-05-05 14:44:02 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2011-05-05 14:44:02 (GMT) |
commit | bae78d4a2cc32952a19e4da9f0486af635ea6d47 (patch) | |
tree | d56b9b4bc802bae55bde7227677ed1b7045bdcd8 /src/network/bearer/qnetworkconfigmanager_p.cpp | |
parent | c2dce7ae678d1206f114dc18f114ddc1b32f3c68 (diff) | |
parent | b5e0130ff16e908a0e77904f34fa9af93b837dcb (diff) | |
download | Qt-bae78d4a2cc32952a19e4da9f0486af635ea6d47.zip Qt-bae78d4a2cc32952a19e4da9f0486af635ea6d47.tar.gz Qt-bae78d4a2cc32952a19e4da9f0486af635ea6d47.tar.bz2 |
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public:
Skip test on MacOS due to problems with corewlan plugin
Send User-Agent from the network request in http proxy CONNECT command
Fix initial main window dimensions for "fullscreen with softkeys" case
Fix compile errors in bearer tests
Fix QNetworkConfigurationManager usage outside main thread first
Diffstat (limited to 'src/network/bearer/qnetworkconfigmanager_p.cpp')
-rw-r--r-- | src/network/bearer/qnetworkconfigmanager_p.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/network/bearer/qnetworkconfigmanager_p.cpp b/src/network/bearer/qnetworkconfigmanager_p.cpp index c321328..f703354 100644 --- a/src/network/bearer/qnetworkconfigmanager_p.cpp +++ b/src/network/bearer/qnetworkconfigmanager_p.cpp @@ -392,8 +392,6 @@ void QNetworkConfigurationManagerPrivate::updateConfigurations() this, SLOT(configurationRemoved(QNetworkConfigurationPrivatePointer))); connect(engine, SIGNAL(configurationChanged(QNetworkConfigurationPrivatePointer)), this, SLOT(configurationChanged(QNetworkConfigurationPrivatePointer))); - - QMetaObject::invokeMethod(engine, "initialize"); } } @@ -423,8 +421,19 @@ void QNetworkConfigurationManagerPrivate::updateConfigurations() startPolling(); } - if (firstUpdate) + if (firstUpdate) { firstUpdate = false; + QList<QBearerEngine*> enginesToInitialize = sessionEngines; //shallow copy the list in case it is modified when we unlock mutex + Qt::ConnectionType connectionType; + if (QCoreApplicationPrivate::mainThread() == QThread::currentThread()) + connectionType = Qt::DirectConnection; + else + connectionType = Qt::BlockingQueuedConnection; + locker.unlock(); + foreach (QBearerEngine* engine, enginesToInitialize) { + QMetaObject::invokeMethod(engine, "initialize", connectionType); + } + } } void QNetworkConfigurationManagerPrivate::performAsyncConfigurationUpdate() |