[progressmeter.c]
improvments from andreas@:
* saner speed estimate for transfers that takes less than a second by
rounding the time to 1 second.
* when the transfer is finished calculate the actual total speed
rather than the current speed which is given during the transfer
[cipher-aes.c]
fix #ifdef before #define; ok markus@
(RCS ID sync only, Portable already had this)
+ - markus@cvs.openbsd.org 2003/12/02 12:15:10
+ [progressmeter.c]
+ improvments from andreas@:
+ * saner speed estimate for transfers that takes less than a second by
+ rounding the time to 1 second.
+ * when the transfer is finished calculate the actual total speed
+ rather than the current speed which is given during the transfer
20031208
- (tim) [configure.ac] Bug 770. Fix --without-rpath.
*/
#include "includes.h"
-RCSID("$OpenBSD: progressmeter.c,v 1.17 2003/11/20 11:39:28 markus Exp $");
+RCSID("$OpenBSD: progressmeter.c,v 1.18 2003/12/02 12:15:10 markus Exp $");
#include "progressmeter.h"
#include "atomicio.h"
if (bytes_left > 0)
elapsed = now - last_update;
- else
+ else {
elapsed = now - start;
+ /* Calculate true total speed when done */
+ transferred = end_pos;
+ bytes_per_second = 0;
+ }
/* calculate speed */
if (elapsed != 0)
cur_speed = (transferred / elapsed);
else
- cur_speed = 0;
+ cur_speed = transferred;
#define AGE_FACTOR 0.9
if (bytes_per_second != 0) {