Re: [PATCH 2/4] http: add the ability to log progress
- From
Eric Sunshine <sunshine@sunshineco.com>
- Date
- May 8, 2024, 16:52 UTC
- Message-ID
- <CAPig+cRS1SE5RNoqMp4F=rdjy7ueukN82q9qRaLdQWjjDJDvXQ@mail.gmail.com>
- In-Reply-To
- <20240508124453.600871-3-toon@iotcl.com>
On Wed, May 8, 2024 at 8:45 AM Toon Claes <toon@iotcl.com> wrote:
Show 19 quoted lines
> Add an option `progress` to `struct http_get_options` to allow the
> caller to enable download progress using the progress.c API.
>
> Signed-off-by: Toon Claes <toon@iotcl.com>
> ---
> diff --git a/http.c b/http.c
> @@ -2061,6 +2081,13 @@ static int http_request(const char *url,
> + if (options && options->progress) {
> + progress = start_progress(_("Downloading via HTTP"), 0);
> +
> + curl_easy_setopt(slot->curl, CURLOPT_NOPROGRESS, 0L);
> + curl_easy_setopt(slot->curl, CURLOPT_XFERINFODATA, progress);
> + curl_easy_setopt(slot->curl, CURLOPT_XFERINFOFUNCTION, &http_progress_callback);
> + }
> @@ -2079,6 +2106,11 @@ static int http_request(const char *url,
> + if (progress) {
> + curl_easy_setopt(slot->curl, CURLOPT_XFERINFODATA, NULL);
> + stop_progress(&progress);
> + }The changes thus far in the series all seem very straightforward. Nicely done.
Can you explain to this reviewer why you only reset CURLOPT_XFERINFODATA here, but not CURLOPT_NOPROGRESS and CURLOPT_XFERINFOFUNCTION?