From: Martin Pool Date: Fri, 15 Mar 2002 12:45:10 +0000 (+0000) Subject: If we've finished transferring a file, show the time taken; otherwise X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/commitdiff_plain/c579310a009dc21a0f2b378c711980336f79add6 If we've finished transferring a file, show the time taken; otherwise show expected time to complete. That's kind of inconsistent, but people can probably cope. Hopefully we'll get more consistent and complete progress reporting soon. (Cameron Simpson) --- diff --git a/util.c b/util.c index 3e4e0f40..c1e04710 100644 --- a/util.c +++ b/util.c @@ -866,7 +866,14 @@ static void rprint_progress(OFF_T ofs, OFF_T size, struct timeval *now, unsigned long diff = msdiff(&start_time, now); double rate = diff ? (double) (ofs-start_ofs) * 1000.0 / diff / 1024.0 : 0; const char *units; - double remain = rate ? (double) (size-ofs) / rate / 1000.0: 0.0; + /* If we've finished transferring this file, show the time taken; + * otherwise show expected time to complete. That's kind of + * inconsistent, but people can probably cope. Hopefully we'll + * get more consistent and complete progress reporting soon. -- + * mbp */ + double remain = is_last + ? (double) diff / 1000.0 + : rate ? (double) (size-ofs) / rate / 1000.0 : 0.0; int remain_h, remain_m, remain_s; if (rate > 1024*1024) {