summaryrefslogtreecommitdiffstats
path: root/src/network/access
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-04-21 12:00:28 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-04-21 12:00:28 (GMT)
commitc24bff633684b99d05e28bd4926e557fb553cf75 (patch)
treee5ed3c3d18fd3d244f695f2738ab178e339f79c8 /src/network/access
parent69a32a4a4f209e098384159b8349a77cd1f4f7ce (diff)
parente4b94afe25c8026d61a726c778088c3cc627ef13 (diff)
downloadQt-c24bff633684b99d05e28bd4926e557fb553cf75.zip
Qt-c24bff633684b99d05e28bd4926e557fb553cf75.tar.gz
Qt-c24bff633684b99d05e28bd4926e557fb553cf75.tar.bz2
Merge branch '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into 4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (28 commits) QNAM: Add a code comment related to the cache QtScript: regression with instanceof operator for QMetaObject wrappers QNAM HTTP: Fixed a bug when getting empty files with pipelining [tst_bic] Fix compilation in non-X11/Mac/Windows platforms Fix accidental change in QtWebKit QNAM HTTP: Pipelining improvement fix qmake conditionals QtScript: Add translation context test Ensure we stop the name lookups in QAbstractSocket if we abort(). Don't rely on tryStart() to do job control. [tst_bic] Suppress the warning about the QGraphicsProxyWidget BIC [tst_bic] Add two more private classes to the blacklist [tst_bic] Remove superfluous newline [tst_bic] Fix gen.sh not to generate sequential empty lines Fix QSslSocket::constructing autotest failure Improve QScript{Engine,Value}::toObject() test coverage [tst_bic] Add testing for Phonon too [tst_bic] Cache the compilation results for a faster testing [tst_bic] Blacklist all template expansions [tst_bic] Add baseline for Qt 4.6.0 ...
Diffstat (limited to 'src/network/access')
-rw-r--r--src/network/access/qhttpnetworkconnection.cpp6
-rw-r--r--src/network/access/qhttpnetworkconnectionchannel.cpp2
-rw-r--r--src/network/access/qnetworkreplyimpl.cpp5
3 files changed, 11 insertions, 2 deletions
diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp
index a6322a3..559124f 100644
--- a/src/network/access/qhttpnetworkconnection.cpp
+++ b/src/network/access/qhttpnetworkconnection.cpp
@@ -489,7 +489,11 @@ void QHttpNetworkConnectionPrivate::fillPipeline(QAbstractSocket *socket)
int i = indexOf(socket);
- if (! (defaultPipelineLength - channels[i].alreadyPipelinedRequests.length() >= 2)) {
+ // return fast if there was no reply right now processed
+ if (channels[i].reply == 0)
+ return;
+
+ if (! (defaultPipelineLength - channels[i].alreadyPipelinedRequests.length() >= defaultRePipelineLength)) {
return;
}
diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp
index 4c3dbe2..f1c51bc 100644
--- a/src/network/access/qhttpnetworkconnectionchannel.cpp
+++ b/src/network/access/qhttpnetworkconnectionchannel.cpp
@@ -384,7 +384,7 @@ void QHttpNetworkConnectionChannel::_q_receiveReply()
if (!replyPrivate->expectContent()) {
replyPrivate->state = QHttpNetworkReplyPrivate::AllDoneState;
allDone();
- return;
+ break;
}
}
break;
diff --git a/src/network/access/qnetworkreplyimpl.cpp b/src/network/access/qnetworkreplyimpl.cpp
index 59c7d76..320b1ac 100644
--- a/src/network/access/qnetworkreplyimpl.cpp
+++ b/src/network/access/qnetworkreplyimpl.cpp
@@ -580,8 +580,13 @@ QNetworkReplyImpl::QNetworkReplyImpl(QObject *parent)
QNetworkReplyImpl::~QNetworkReplyImpl()
{
Q_D(QNetworkReplyImpl);
+
+ // This code removes the data from the cache if it was prematurely aborted.
+ // See QNetworkReplyImplPrivate::completeCacheSave(), we disable caching there after the cache
+ // save had been properly finished. So if it is still enabled it means we got deleted/aborted.
if (d->isCachingEnabled())
d->networkCache()->remove(url());
+
if (d->outgoingDataBuffer)
delete d->outgoingDataBuffer;
}