summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArne H Juul <arnej27959@users.noreply.github.com>2021-02-24 20:40:33 +0100
committerGitHub <noreply@github.com>2021-02-24 20:40:33 +0100
commit9c522767919d382b7fdfcb5b47ecb0558c79433d (patch)
treef4042748bd7cad63427f38faafe30e03da4b2b0c
parenteb965784b2af1b70b3e3b017f9be7b2d3983f1df (diff)
parentb4125a53f50194642e1aec9c97526e04856523b5 (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.cpp9
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) {