diff options
-rw-r--r-- | src/ChangeLog | 3 | ||||
-rw-r--r-- | src/editfns.c | 5 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 1b16fdc089..ca369bf38f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,8 @@ 2011-06-05 Andreas Schwab <schwab@linux-m68k.org> + * 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 0e40fde9ca..b961e602e4 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; |