summaryrefslogtreecommitdiffstats
path: root/src/network/bearer
diff options
context:
space:
mode:
authorOlivier Goffart <olivier.goffart@nokia.com>2011-04-12 11:21:56 (GMT)
committerOlivier Goffart <olivier.goffart@nokia.com>2011-04-12 11:22:16 (GMT)
commitf62e846c7ebe243a2a36e7577d070f1275f2ec47 (patch)
tree0cbfa6cd832b6f20ea699e8f172b1b3afe96b2c2 /src/network/bearer
parent6a8beac59f5824e1fc826f513495fbb8478b79ce (diff)
parentd2b05885a28aafa331b25cdf3b647b782605df08 (diff)
downloadQt-f62e846c7ebe243a2a36e7577d070f1275f2ec47.zip
Qt-f62e846c7ebe243a2a36e7577d070f1275f2ec47.tar.gz
Qt-f62e846c7ebe243a2a36e7577d070f1275f2ec47.tar.bz2
Merge earth-team into origin/master'
Diffstat (limited to 'src/network/bearer')
-rw-r--r--src/network/bearer/qnetworkconfigmanager.cpp3
-rw-r--r--src/network/bearer/qsharednetworksession.cpp7
2 files changed, 9 insertions, 1 deletions
diff --git a/src/network/bearer/qnetworkconfigmanager.cpp b/src/network/bearer/qnetworkconfigmanager.cpp
index 9e1eaea..10fe74c 100644
--- a/src/network/bearer/qnetworkconfigmanager.cpp
+++ b/src/network/bearer/qnetworkconfigmanager.cpp
@@ -197,6 +197,9 @@ QNetworkConfigurationManagerPrivate *qNetworkConfigurationManagerPrivate()
/*!
Constructs a QNetworkConfigurationManager with the given \a parent.
+
+ Note that to ensure a valid list of current configurations immediately available, updating
+ is done during construction which causes some delay.
*/
QNetworkConfigurationManager::QNetworkConfigurationManager(QObject *parent)
: QObject(parent)
diff --git a/src/network/bearer/qsharednetworksession.cpp b/src/network/bearer/qsharednetworksession.cpp
index 28ca173..fcb0128 100644
--- a/src/network/bearer/qsharednetworksession.cpp
+++ b/src/network/bearer/qsharednetworksession.cpp
@@ -59,6 +59,11 @@ inline QSharedNetworkSessionManager* sharedNetworkSessionManager()
return rv;
}
+static void doDeleteLater(QObject* obj)
+{
+ obj->deleteLater();
+}
+
QSharedPointer<QNetworkSession> QSharedNetworkSessionManager::getSession(QNetworkConfiguration config)
{
QSharedNetworkSessionManager *m(sharedNetworkSessionManager());
@@ -69,7 +74,7 @@ QSharedPointer<QNetworkSession> QSharedNetworkSessionManager::getSession(QNetwor
return p;
}
//otherwise make one
- QSharedPointer<QNetworkSession> session(new QNetworkSession(config));
+ QSharedPointer<QNetworkSession> session(new QNetworkSession(config), doDeleteLater);
m->sessions[config] = session;
return session;
}