mirror of
https://github.com/curl/curl.git
synced 2026-08-25 12:33:35 +03:00
- Prevent the internal progress meter from updating more frequently than once
per second.
This commit is contained in:
parent
66fc5498d2
commit
8e719e3ef5
3 changed files with 16 additions and 2 deletions
|
|
@ -245,6 +245,7 @@ int Curl_pgrsUpdate(struct connectdata *conn)
|
|||
long ulestimate=0;
|
||||
long dlestimate=0;
|
||||
long total_estimate;
|
||||
bool shownow=FALSE;
|
||||
|
||||
now = Curl_tvnow(); /* what time is it */
|
||||
|
||||
|
|
@ -266,6 +267,7 @@ int Curl_pgrsUpdate(struct connectdata *conn)
|
|||
|
||||
/* Calculations done at most once a second, unless end is reached */
|
||||
if(data->progress.lastshow != (long)now.tv_sec) {
|
||||
shownow = TRUE;
|
||||
|
||||
data->progress.lastshow = now.tv_sec;
|
||||
|
||||
|
|
@ -346,7 +348,12 @@ int Curl_pgrsUpdate(struct connectdata *conn)
|
|||
return result;
|
||||
}
|
||||
|
||||
/* If there's no external callback set, use internal code to show progress */
|
||||
if(!shownow)
|
||||
/* only show the internal progress meter once per second */
|
||||
return 0;
|
||||
|
||||
/* If there's no external callback set, use internal code to show
|
||||
progress */
|
||||
|
||||
if(!(data->progress.flags & PGRS_HEADERS_OUT)) {
|
||||
if(data->reqdata.resume_from) {
|
||||
|
|
@ -422,7 +429,7 @@ int Curl_pgrsUpdate(struct connectdata *conn)
|
|||
/* we flush the output stream to make it appear as soon as possible */
|
||||
fflush(data->set.err);
|
||||
|
||||
}
|
||||
} /* !(data->progress.flags & PGRS_HIDE) */
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue