diff options
3 files changed, 13 insertions, 7 deletions
diff --git a/src/network/access/qnetworkaccesscachebackend.cpp b/src/network/access/qnetworkaccesscachebackend.cpp index 890032fe47..ea3d6b0cce 100644 --- a/src/network/access/qnetworkaccesscachebackend.cpp +++ b/src/network/access/qnetworkaccesscachebackend.cpp @@ -52,7 +52,6 @@ QT_BEGIN_NAMESPACE QNetworkAccessCacheBackend::QNetworkAccessCacheBackend() : QNetworkAccessBackend() - , device(0) { } @@ -125,11 +124,6 @@ bool QNetworkAccessCacheBackend::sendCacheContents() void QNetworkAccessCacheBackend::closeDownstreamChannel() { - if (operation() == QNetworkAccessManager::GetOperation) { - device->close(); - delete device; - device = 0; - } } void QNetworkAccessCacheBackend::closeUpstreamChannel() diff --git a/src/network/access/qnetworkaccesscachebackend_p.h b/src/network/access/qnetworkaccesscachebackend_p.h index 69765e893e..58f5aac83f 100644 --- a/src/network/access/qnetworkaccesscachebackend_p.h +++ b/src/network/access/qnetworkaccesscachebackend_p.h @@ -75,7 +75,6 @@ public: private: bool sendCacheContents(); - QIODevice *device; }; diff --git a/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp b/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp index 125eab2f8c..2bdcf5b777 100644 --- a/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp +++ b/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp @@ -42,6 +42,7 @@ #include <QtTest/QtTest> #include <QtNetwork/QNetworkAccessManager> +#include <QtNetwork/QNetworkReply> #ifndef QT_NO_BEARERMANAGEMENT #include <QtNetwork/QNetworkConfigurationManager> #endif @@ -61,6 +62,7 @@ public: private slots: void networkAccessible(); + void alwaysCacheRequest(); }; tst_QNetworkAccessManager::tst_QNetworkAccessManager() @@ -126,5 +128,16 @@ void tst_QNetworkAccessManager::networkAccessible() #endif } +void tst_QNetworkAccessManager::alwaysCacheRequest() +{ + QNetworkAccessManager manager; + + QNetworkRequest req; + req.setAttribute(QNetworkRequest::CacheLoadControlAttribute, QNetworkRequest::AlwaysCache); + QNetworkReply *reply = manager.get(req); + reply->close(); + delete reply; +} + QTEST_MAIN(tst_QNetworkAccessManager) #include "tst_qnetworkaccessmanager.moc" |