47 lines
1.3 KiB
Diff
47 lines
1.3 KiB
Diff
===================================================================
|
|
RCS file: /cvsroot/curl/curl/lib/progress.c,v
|
|
retrieving revision 1.83
|
|
retrieving revision 1.84
|
|
diff -u -r1.83 -r1.84
|
|
--- curl/lib/progress.c 2007/03/23 04:23:53 1.83
|
|
+++ curl/lib/progress.c 2007/04/18 20:02:41 1.84
|
|
@@ -245,6 +245,7 @@
|
|
long ulestimate=0;
|
|
long dlestimate=0;
|
|
long total_estimate;
|
|
+ bool shownow=FALSE;
|
|
|
|
now = Curl_tvnow(); /* what time is it */
|
|
|
|
@@ -266,6 +267,7 @@
|
|
|
|
/* 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 @@
|
|
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 @@
|
|
/* we flush the output stream to make it appear as soon as possible */
|
|
fflush(data->set.err);
|
|
|
|
- }
|
|
+ } /* !(data->progress.flags & PGRS_HIDE) */
|
|
|
|
return 0;
|
|
}
|