os: Round fraction in pnprintf %f format

Truncating the fraction part leads to a test failure where -1203.30 is
printed as -1203.29. Round this to the nearest value instead by adding
0.5 before converting to an integer

Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
Keith Packard 2013-02-08 08:57:43 -08:00
parent 509b3c3dc8
commit b173eb2ae3

View File

@ -1999,7 +1999,7 @@ FormatDouble(double dbl, char *string)
int slen = 0;
uint64_t frac;
frac = (dbl > 0 ? dbl : -dbl) * 100.0;
frac = (dbl > 0 ? dbl : -dbl) * 100.0 + 0.5;
frac %= 100;
/* write decimal part to string */