diff options
author | Markus Goetz <Markus.Goetz@nokia.com> | 2009-08-28 08:11:57 (GMT) |
---|---|---|
committer | Markus Goetz <Markus.Goetz@nokia.com> | 2009-08-28 08:13:08 (GMT) |
commit | 8ff968cc37c34121dc6a458df0d4d39850a54bff (patch) | |
tree | 1631e30bd7a2dd71f48500b18910dacaab97fbac /src | |
parent | aae9ae9dc5de983a7605934b13113abc647683c4 (diff) | |
download | Qt-8ff968cc37c34121dc6a458df0d4d39850a54bff.zip Qt-8ff968cc37c34121dc6a458df0d4d39850a54bff.tar.gz Qt-8ff968cc37c34121dc6a458df0d4d39850a54bff.tar.bz2 |
QNAM HTTP Code: HTTP/1.0 has implicit connection close
Reviewed-by: TrustMe
Diffstat (limited to 'src')
-rw-r--r-- | src/network/access/qhttpnetworkreply.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/network/access/qhttpnetworkreply.cpp b/src/network/access/qhttpnetworkreply.cpp index d3d57d4..ea2018d 100644 --- a/src/network/access/qhttpnetworkreply.cpp +++ b/src/network/access/qhttpnetworkreply.cpp @@ -514,8 +514,11 @@ qint64 QHttpNetworkReplyPrivate::readHeader(QAbstractSocket *socket) chunkedTransferEncoding = headerField("transfer-encoding").toLower().contains("chunked"); // cache isConnectionCloseEnabled since it is called often - connectionCloseEnabled = (headerField("connection").toLower().contains("close") || - headerField("proxy-connection").toLower().contains("close")); + QByteArray connectionHeaderField = headerField("connection"); + // check for explicit indication of close or the implicit connection close of HTTP/1.0 + connectionCloseEnabled = (connectionHeaderField.toLower().contains("close") || + headerField("proxy-connection").toLower().contains("close")) || + (majorVersion == 1 && minorVersion == 0 && connectionHeaderField.isEmpty()); } return bytes; } |