From 51c2899aa90b29de39c21fad02481123f8fab2ad Mon Sep 17 00:00:00 2001 From: Fumitoshi UKAI Date: Thu, 23 Jan 2003 16:05:54 +0000 Subject: [w3m-dev 03680] showProgress() on fast system * file.c (showProgress): check line len, time From: Hironori SAKAMOTO --- ChangeLog | 7 ++++++- file.c | 18 ++++++++++-------- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index fe8239d..b9ad15b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2003-01-24 Hironori SAKAMOTO + + * [w3m-dev 03680] showProgress() on fast system + * file.c (showProgress): check line len, time + 2003-01-24 Hironori SAKAMOTO * [w3m-dev 03679] Re: cleanup for pipe @@ -6721,4 +6726,4 @@ a * [w3m-dev 03276] compile error on EWS4800 * release-0-2-1 * import w3m-0.2.1 -$Id: ChangeLog,v 1.706 2003/01/23 15:59:24 ukai Exp $ +$Id: ChangeLog,v 1.707 2003/01/23 16:05:54 ukai Exp $ diff --git a/file.c b/file.c index 54e8154..a7ed387 100644 --- a/file.c +++ b/file.c @@ -1,4 +1,4 @@ -/* $Id: file.c,v 1.201 2003/01/23 15:59:27 ukai Exp $ */ +/* $Id: file.c,v 1.202 2003/01/23 16:05:56 ukai Exp $ */ #include "fm.h" #include #include "myctype.h" @@ -6182,12 +6182,11 @@ showProgress(clen_t * linelen, clen_t * trbyte) if (!fmInitialized) return; + if (*linelen < 1024) + return; if (current_content_length > 0) { double ratio; cur_time = time(0); - if (cur_time == last_time) - return; - last_time = cur_time; if (*trbyte == 0) { move(LASTLINE, 0); clrtoeolx(); @@ -6195,6 +6194,9 @@ showProgress(clen_t * linelen, clen_t * trbyte) } *trbyte += *linelen; *linelen = 0; + if (cur_time == last_time) + return; + last_time = cur_time; move(LASTLINE, 0); ratio = 100.0 * (*trbyte) / current_content_length; fmtrbyte = convert_size2(*trbyte, current_content_length, 1); @@ -6231,11 +6233,8 @@ showProgress(clen_t * linelen, clen_t * trbyte) /* no_clrtoeol(); */ refresh(); } - else if (*linelen > 1000) { + else { cur_time = time(0); - if (cur_time == last_time) - return; - last_time = cur_time; if (*trbyte == 0) { move(LASTLINE, 0); clrtoeolx(); @@ -6243,6 +6242,9 @@ showProgress(clen_t * linelen, clen_t * trbyte) } *trbyte += *linelen; *linelen = 0; + if (cur_time == last_time) + return; + last_time = cur_time; move(LASTLINE, 0); fmtrbyte = convert_size(*trbyte, 1); duration = cur_time - start_time; -- cgit v1.2.3