diff --git a/lib/http.c b/lib/http.c index ca9978042..a81a7bbf6 100644 --- a/lib/http.c +++ b/lib/http.c @@ -1620,11 +1620,11 @@ CURLcode Curl_http(struct connectdata *conn) if(!conn->bits.upload_chunky) /* We're not sending it 'chunked', append it to the request already now to reduce the number if send() calls */ - add_buffer(req_buffer, data->set.postfields, postsize); + add_buffer(req_buffer, data->set.postfields, (size_t)postsize); else { /* Append the POST data chunky-style */ add_bufferf(req_buffer, "%x\r\n", postsize); - add_buffer(req_buffer, data->set.postfields, postsize); + add_buffer(req_buffer, data->set.postfields, (size_t)postsize); add_buffer(req_buffer, "\r\n0\r\n\r\n", 7); /* end of a chunked transfer stream */ } diff --git a/lib/urldata.h b/lib/urldata.h index 1338c666e..05c8d6ce7 100644 --- a/lib/urldata.h +++ b/lib/urldata.h @@ -205,7 +205,7 @@ struct negotiatedata { ***************************************************************************/ struct HTTP { struct FormData *sendit; - size_t postsize; + curl_off_t postsize; /* off_t to handle large file sizes */ char *postdata; const char *p_pragma; /* Pragma: string */ @@ -221,7 +221,7 @@ struct HTTP { curl_read_callback fread; /* backup storage for fread pointer */ void *fread_in; /* backup storage for fread_in pointer */ char *postdata; - size_t postsize; + curl_off_t postsize; } backup; enum {