From: Ulrich Drepper Date: Mon, 8 Mar 1999 21:35:44 +0000 (+0000) Subject: (__printf_fphex): Print no decimal point if the precision is zero, even if the mantis... X-Git-Tag: upstream/2.30~27488 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=29329ef54739d84393b59058d83ba23e40ca88e9;p=external%2Fglibc.git (__printf_fphex): Print no decimal point if the precision is zero, even if the mantissa is non-zero. --- diff --git a/stdio-common/printf_fphex.c b/stdio-common/printf_fphex.c index a959d55..660435f 100644 --- a/stdio-common/printf_fphex.c +++ b/stdio-common/printf_fphex.c @@ -412,9 +412,9 @@ __printf_fphex (FILE *fp, + ((expbuf + sizeof expbuf) - expstr)); /* Exponent. */ - /* A special case if when the mantissa is zero and the `#' is not - given. In this case we must not print the decimal point. */ - if (zero_mantissa && precision == 0 && !info->alt) + /* A special case when the mantissa or the precision is zero and the `#' + is not given. In this case we must not print the decimal point. */ + if ((zero_mantissa || precision == 0) && !info->alt) ++width; /* This nihilates the +1 for the decimal-point character in the following equation. */ @@ -432,10 +432,10 @@ __printf_fphex (FILE *fp, outchar (info->spec == 'A' ? 'X' : 'x'); outchar (leading); - if (!zero_mantissa || precision > 0 || info->alt) + if ((!zero_mantissa && precision > 0) || info->alt) outchar (decimal); - if (!zero_mantissa || precision > 0) + if (!zero_mantissa && precision > 0) { PRINT (numstr, MIN (numend - numstr, precision)); if (precision > numend - numstr)