Thomas Braby <[EMAIL PROTECTED]> writes:

> With wget 1.10.2 compiled using Visual Studio 2005 for Windows XP x64 
> I was getting no ETA until late in the transfer, when I'd get things 
> like:
>
> 49:49:49 then 48:48:48 then 47:47:47 etc.
>
> So I checked the eta value in seconds and it was correct, so the code 
> in progress.c line 880:
>
>    eta_hrs = (int)(eta / 3600, eta %= 3600);
>    eta_min = (int)(eta / 60, eta %= 60);
>    eta_sec = (int)(eta);

This is weird.  Did you compile the code yourself, or did you get it
from a Windows download site?  I'm asking because the code in
progress.c doesn't look like that; it in fact looks like this:

      eta_hrs = eta / 3600, eta %= 3600;
      eta_min = eta / 60,   eta %= 60;
      eta_sec = eta;

The cast to int looks like someone was trying to remove a warning and
botched operator precedence in the process.  If you must insert the
cast, try:

eta_hrs = (int) (eta / 3600), eta %= 3600;
...

Reply via email to