From 7cf18b05e04bbb0f08c74d2567b0648f6c31a952 Mon Sep 17 00:00:00 2001 From: John Schroeder Date: Tue, 26 Nov 2019 09:13:11 +0100 Subject: XFERINFOFUNCTION: support CURL_PROGRESSFUNC_CONTINUE (also for PROGRESSFUNCTION) By returning this value from the callback, the internal progress function call is still called afterward. Closes #4599 --- docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3 | 7 +++++-- docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3 | 7 +++++-- docs/libcurl/symbols-in-versions | 1 + 3 files changed, 11 insertions(+), 4 deletions(-) (limited to 'docs/libcurl') diff --git a/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3 b/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3 index b077e3b6e..4cdb7ec4b 100644 --- a/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3 +++ b/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3 @@ -60,8 +60,11 @@ Unknown/unused argument values passed to the callback will be set to zero the callback will be called one or more times first, before it knows the data sizes so a program must be made to handle that. -Returning a non-zero value from this callback will cause libcurl to abort the -transfer and return \fICURLE_ABORTED_BY_CALLBACK\fP. +If your callback function returns CURL_PROGRESSFUNC_CONTINUE it will cause +libcurl to continue executing the default progress function. + +Returning any other non-zero value from this callback will cause libcurl to +abort the transfer and return \fICURLE_ABORTED_BY_CALLBACK\fP. If you transfer data with the multi interface, this function will not be called during periods of idleness unless you call the appropriate libcurl diff --git a/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3 b/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3 index 9bd89db70..9039aa398 100644 --- a/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3 +++ b/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3 @@ -57,8 +57,11 @@ Unknown/unused argument values passed to the callback will be set to zero the callback will be called one or more times first, before it knows the data sizes so a program must be made to handle that. -Returning a non-zero value from this callback will cause libcurl to abort the -transfer and return \fICURLE_ABORTED_BY_CALLBACK\fP. +If your callback function returns CURL_PROGRESSFUNC_CONTINUE it will cause +libcurl to continue executing the default progress function. + +Returning any other non-zero value from this callback will cause libcurl to +abort the transfer and return \fICURLE_ABORTED_BY_CALLBACK\fP. If you transfer data with the multi interface, this function will not be called during periods of idleness unless you call the appropriate libcurl diff --git a/docs/libcurl/symbols-in-versions b/docs/libcurl/symbols-in-versions index fb37a2dd1..29013b148 100644 --- a/docs/libcurl/symbols-in-versions +++ b/docs/libcurl/symbols-in-versions @@ -869,6 +869,7 @@ CURL_POLL_INOUT 7.14.0 CURL_POLL_NONE 7.14.0 CURL_POLL_OUT 7.14.0 CURL_POLL_REMOVE 7.14.0 +CURL_PROGRESSFUNC_CONTINUE 7.68.0 CURL_PROGRESS_BAR 7.1.1 - 7.4.1 CURL_PROGRESS_STATS 7.1.1 - 7.4.1 CURL_PUSH_DENY 7.44.0 -- cgit v1.2.3