From: Andreas Schwab Date: Sun, 5 Jun 2011 22:46:26 +0000 (+0200) Subject: Fixes: debbugs:8806 X-Git-Tag: emacs-pretest-24.0.90~104^2~618^2~19 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=172418ad545a924481fcbde47882a83c4d86b280;p=emacs.git Fixes: debbugs:8806 * src/editfns.c (Fformat): Correctly handle zero flag with hexadecimal format. --- diff --git a/src/ChangeLog b/src/ChangeLog index 1b16fdc089c..ca369bf38f6 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,8 @@ 2011-06-05 Andreas Schwab + * editfns.c (Fformat): Correctly handle zero flag with hexadecimal + format. (Bug#8806) + * gtkutil.c (xg_get_default_scrollbar_width): Avoid warning. * xfns.c (x_set_scroll_bar_default_width): Move declarations diff --git a/src/editfns.c b/src/editfns.c index 0e40fde9ca4..b961e602e4c 100644 --- a/src/editfns.c +++ b/src/editfns.c @@ -4083,7 +4083,10 @@ usage: (format STRING &rest OBJECTS) */) int exponent_bytes = 0; int signedp = src0 == '-' || src0 == '+' || src0 == ' '; int significand_bytes; - if (zero_flag && '0' <= src[signedp] && src[signedp] <= '9') + if (zero_flag + && ((src[signedp] >= '0' && src[signedp] <= '9') + || (src[signedp] >= 'a' && src[signedp] <= 'f') + || (src[signedp] >= 'A' && src[signedp] <= 'F'))) { leading_zeros += padding; padding = 0;