aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/transfer.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/transfer.c b/lib/transfer.c
index 84d244ef0..2a0df0f64 100644
--- a/lib/transfer.c
+++ b/lib/transfer.c
@@ -507,10 +507,14 @@ CURLcode Curl_readwrite(struct connectdata *conn,
if(conn->bits.chunk)
conn->size=-1;
- if(-1 != conn->size) {
- Curl_pgrsSetDownloadSize(data, conn->size);
- conn->maxdownload = conn->size;
- }
+ }
+ if(-1 != conn->size) {
+ /* We do this operation even if no_body is true, since this
+ data might be retrieved later with curl_easy_getinfo()
+ and its CURLINFO_CONTENT_LENGTH_DOWNLOAD option. */
+
+ Curl_pgrsSetDownloadSize(data, conn->size);
+ conn->maxdownload = conn->size;
}
/* If max download size is *zero* (nothing) we already
have nothing and can safely return ok now! */