X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/agedu/blobdiff_plain/e28113b43a24871fc5162f83050606ddf69ecc52..815e510ac8f79ac0c3ba2032a98e919e43df1a02:/html.c diff --git a/html.c b/html.c index e72d1bd..d316d1e 100644 --- a/html.c +++ b/html.c @@ -325,12 +325,17 @@ static void compute_display_size(unsigned long long size, "%#.1f Pb", "%#.1f Eb", "%#.1f Zb", "%#.1f Yb" }; int shift = 0; - - while (size >= 1024 && shift < lenof(fmts)-1) { - size >>= 10; + unsigned long long tmpsize; + double denominator; + + tmpsize = size; + denominator = 1.0; + while (tmpsize >= 1024 && shift < lenof(fmts)-1) { + tmpsize >>= 10; + denominator *= 1024.0; shift++; } - *display_size = (double)size; + *display_size = size / denominator; *fmt = fmts[shift]; }