From: Nicholas Nethercote Date: Fri, 1 Sep 2023 04:55:47 +0000 (+1000) Subject: hyper: fix a progress upload counter bug X-Git-Tag: curl-8_3_0~57 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=73f4ef584fa58108f873b918b3ab3db641f8be75;p=thirdparty%2Fcurl.git hyper: fix a progress upload counter bug `Curl_pgrsSetUploadCounter` should be a passed a total count, not an increment. This changes the failing diff for test 579 with hyper from this: ``` Progress callback called with UL 0 out of 0[LF] -Progress callback called with UL 8 out of 0[LF] -Progress callback called with UL 16 out of 0[LF] -Progress callback called with UL 26 out of 0[LF] -Progress callback called with UL 61 out of 0[LF] -Progress callback called with UL 66 out of 0[LF] +Progress callback called with UL 29 out of 0[LF] ``` to this: ``` Progress callback called with UL 0 out of 0[LF] -Progress callback called with UL 8 out of 0[LF] -Progress callback called with UL 16 out of 0[LF] -Progress callback called with UL 26 out of 0[LF] -Progress callback called with UL 61 out of 0[LF] -Progress callback called with UL 66 out of 0[LF] +Progress callback called with UL 40 out of 0[LF] ``` Presumably a step in the right direction. Closes #11780 --- diff --git a/lib/c-hyper.c b/lib/c-hyper.c index f0f49ce6c2..05080fa9ac 100644 --- a/lib/c-hyper.c +++ b/lib/c-hyper.c @@ -771,7 +771,7 @@ static int uploadstreamed(void *userdata, hyper_context *ctx, /* increasing the writebytecount here is a little premature but we don't know exactly when the body is sent */ data->req.writebytecount += fillcount; - Curl_pgrsSetUploadCounter(data, fillcount); + Curl_pgrsSetUploadCounter(data, data->req.writebytecount); } return HYPER_POLL_READY; }