aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAndrey A. Chernov <ache@FreeBSD.org>2003-03-20 08:05:20 +0000
committerAndrey A. Chernov <ache@FreeBSD.org>2003-03-20 08:05:20 +0000
commitbefb332a6b3fe92e44ff99c78dfe769f8c662464 (patch)
tree4149f501179228cd234484d898fffcd3d002f9ad /lib
parenta6f87194d6372dd3c01c9743b483645fbde06387 (diff)
downloadsrc-befb332a6b3fe92e44ff99c78dfe769f8c662464.tar.gz
src-befb332a6b3fe92e44ff99c78dfe769f8c662464.zip
decimal_point can't be "" according to C99, so set it to standard "."
in that case.
Notes
Notes: svn path=/head/; revision=112425
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/locale/lnumeric.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/libc/locale/lnumeric.c b/lib/libc/locale/lnumeric.c
index b1b975e3a926..77d2bfa1fc72 100644
--- a/lib/libc/locale/lnumeric.c
+++ b/lib/libc/locale/lnumeric.c
@@ -59,9 +59,14 @@ __numeric_load_locale(const char *name)
(const char **)&_numeric_locale);
if (ret != _LDP_ERROR)
__nlocale_changed = 1;
- if (ret == _LDP_LOADED)
+ if (ret == _LDP_LOADED) {
+ /* Can't be empty according to C99 */
+ if (*_numeric_locale.decimal_point == '\0')
+ _numeric_locale.decimal_point =
+ _C_numeric_locale.decimal_point;
_numeric_locale.grouping =
__fix_locale_grouping_str(_numeric_locale.grouping);
+ }
return (ret);
}