diff options
author | Arne H Juul <arnej27959@users.noreply.github.com> | 2021-02-24 20:40:33 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-24 20:40:33 +0100 |
commit | 9c522767919d382b7fdfcb5b47ecb0558c79433d (patch) | |
tree | f4042748bd7cad63427f38faafe30e03da4b2b0c | |
parent | eb965784b2af1b70b3e3b017f9be7b2d3983f1df (diff) | |
parent | b4125a53f50194642e1aec9c97526e04856523b5 (diff) |
Merge pull request #16662 from vespa-engine/arnej/handle-content-length-0
handle HTTP response with Content-Length: 0
-rw-r--r-- | fbench/src/httpclient/httpclient.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/fbench/src/httpclient/httpclient.cpp b/fbench/src/httpclient/httpclient.cpp index 88ae6a0aa81..ea10ff14269 100644 --- a/fbench/src/httpclient/httpclient.cpp +++ b/fbench/src/httpclient/httpclient.cpp @@ -414,15 +414,16 @@ HTTPClient::ContentLengthReader::Read(HTTPClient &client, client._bufpos += fromBuffer; client._dataRead += fromBuffer; res = fromBuffer; - if (client._dataRead >= client._contentLength) { - client._dataDone = true; - return res; - } + } + if (client._dataRead >= client._contentLength) { + client._dataDone = true; + return res; } if ((len - fromBuffer) > (len >> 1)) { readLen = (len - fromBuffer < client._contentLength - client._dataRead) ? len - fromBuffer : client._contentLength - client._dataRead; + assert(readLen > 0); readRes = client._socket->read(static_cast<char *>(buf) + fromBuffer, readLen); if (readRes < 0) { |