diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-02-13 07:07:39 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-02-13 07:07:39 +0000 |
commit | b4974e71dcb32d430d7d686c5de247218991ec6c (patch) | |
tree | 8a2416811576cb5d2d48626f1512394f272e1882 /vsnprintf.c | |
parent | f5219fee6307461c7ead4358290958679d9d0d38 (diff) |
util.c: hexdigit
* util.c (hexdigit): extract identical constants.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vsnprintf.c')
-rw-r--r-- | vsnprintf.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/vsnprintf.c b/vsnprintf.c index 36f6f25465..76178fed5e 100644 --- a/vsnprintf.c +++ b/vsnprintf.c @@ -510,6 +510,12 @@ static int exponent(char *, int, int); #endif /* FLOATING_POINT */ +#ifndef lower_hexdigits +# define lower_hexdigits "0123456789abcdef" +#endif +#ifndef upper_hexdigits +# define upper_hexdigits "0123456789ABCDEF" +#endif /* * Flags used during conversion. @@ -993,7 +999,7 @@ fp_begin: _double = va_arg(ap, double); #endif /* _HAVE_SANE_QUAD_ */ #endif base = 16; - xdigs = "0123456789abcdef"; + xdigs = lower_hexdigits; ch = 'x'; goto nosign; case 's': @@ -1031,10 +1037,10 @@ fp_begin: _double = va_arg(ap, double); base = 10; goto nosign; case 'X': - xdigs = "0123456789ABCDEF"; + xdigs = upper_hexdigits; goto hex; case 'x': - xdigs = "0123456789abcdef"; + xdigs = lower_hexdigits; hex: #ifdef _HAVE_SANE_QUAD_ if (flags & QUADINT) @@ -1251,7 +1257,7 @@ cvt(double value, int ndigits, int flags, char *sign, int *decpt, int ch, int *l } if (ch == 'a' || ch =='A') { digits = BSD__hdtoa(value, - ch == 'a' ? "0123456789abcdef" : "0123456789ABCDEF", + ch == 'a' ? lower_hexdigits : upper_hexdigits, ndigits, decpt, &dsgn, &rve); } else { |