2008-10-06 Eric Blake <ebb9@byu.net>

* libc/stdlib/ldtoa.c (etoasc): Fix rounding to even when fraction
        is 0.5 or 0.75.
This commit is contained in:
Jeff Johnston 2008-10-06 19:47:06 +00:00
parent 75fb38a5fb
commit 0d2597f5a0
2 changed files with 6 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2008-10-06 Eric Blake <ebb9@byu.net>
* libc/stdlib/ldtoa.c (etoasc): Fix rounding to even when fraction
is 0.5 or 0.75.
2008-10-06 Craig Howland <howland@LGSInnovations.com>
* libc/time/tzset_r.c (_tzset_r): Change US default start/end dates to

View File

@ -3153,7 +3153,7 @@ if( digit > 4 )
emovo( y, t, ldp );
if( ecmp(t,ezero) != 0 )
goto roun; /* round to nearest */
if( (*(s-1) & 1) == 0 )
if( ndigs < 0 || (*(s-1-(*(s-1)=='.')) & 1) == 0 )
goto doexp; /* round to even */
}
/* Round up and propagate carry-outs */