summaryrefslogtreecommitdiffstats
path: root/src/network/access/qnetworkaccessmanager.cpp
diff options
context:
space:
mode:
authorPeter Hartmann <peter.hartmann@nokia.com>2009-12-15 09:52:52 (GMT)
committerPeter Hartmann <peter.hartmann@nokia.com>2010-01-11 09:48:05 (GMT)
commit145fecc833926c307819752912e6833169799a53 (patch)
treee527d59a10244b7b6c71b8e63c5019a7dd34c2e4 /src/network/access/qnetworkaccessmanager.cpp
parentef5a985cf47c32bac0ddd3bae1edb7e922e7ec69 (diff)
downloadQt-145fecc833926c307819752912e6833169799a53.zip
Qt-145fecc833926c307819752912e6833169799a53.tar.gz
Qt-145fecc833926c307819752912e6833169799a53.tar.bz2
network internals: start HTTP GET requests right away when called
on the code path from QNetworkAccessManager::get() to QTcpSocket::write() there were two calls involved that were invoked via a QueuedConnection, which would in some occasions delay writing the data to the socket. This patch makes sure the data is written to the socket immediately, without returning to the event loop (only the HTTP backend was changed for that event, the other backends were not changed) Reviewed-by: Thiago Macieira Reviewed-by: Markus Goetz
Diffstat (limited to 'src/network/access/qnetworkaccessmanager.cpp')
-rw-r--r--src/network/access/qnetworkaccessmanager.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/network/access/qnetworkaccessmanager.cpp b/src/network/access/qnetworkaccessmanager.cpp
index 2f57fee..d27fbe7 100644
--- a/src/network/access/qnetworkaccessmanager.cpp
+++ b/src/network/access/qnetworkaccessmanager.cpp
@@ -723,8 +723,6 @@ QNetworkReply *QNetworkAccessManager::createRequest(QNetworkAccessManager::Opera
// third step: find a backend
priv->backend = d->findBackend(op, request);
- // fourth step: setup the reply
- priv->setup(op, request, outgoingData);
#ifndef QT_NO_NETWORKPROXY
QList<QNetworkProxy> proxyList = d->queryProxy(QNetworkProxyQuery(request.url()));
priv->proxyList = proxyList;
@@ -733,6 +731,8 @@ QNetworkReply *QNetworkAccessManager::createRequest(QNetworkAccessManager::Opera
priv->backend->setParent(reply);
priv->backend->reply = priv;
}
+ // fourth step: setup the reply
+ priv->setup(op, request, outgoingData);
#ifndef QT_NO_OPENSSL
reply->setSslConfiguration(request.sslConfiguration());