diff options
author | phantom <phantom@FreeBSD.org> | 2001-02-10 15:36:46 +0000 |
---|---|---|
committer | phantom <phantom@FreeBSD.org> | 2001-02-10 15:36:46 +0000 |
commit | d4e3ae3d2b0ba71baec8eaa715b2e04f155901bf (patch) | |
tree | f16898ec334a52d00a42f5c776a5e65c5fb55cf4 /lib/libc/locale/localeconv.c | |
parent | bab9f921621ed124781eef8abdf07b4bab79169a (diff) | |
download | FreeBSD-src-d4e3ae3d2b0ba71baec8eaa715b2e04f155901bf.zip FreeBSD-src-d4e3ae3d2b0ba71baec8eaa715b2e04f155901bf.tar.gz |
. Fix semantics of grouping (LC_MONETARY::mon_grouping,
LC_NUMERIC::grouping) values.
. Always set __XXX_changed flags then loading numeric & monetary locale
categories to allow localeconv() to use C locale also.
Diffstat (limited to 'lib/libc/locale/localeconv.c')
-rw-r--r-- | lib/libc/locale/localeconv.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/lib/libc/locale/localeconv.c b/lib/libc/locale/localeconv.c index 7e2acea..24ff28f 100644 --- a/lib/libc/locale/localeconv.c +++ b/lib/libc/locale/localeconv.c @@ -50,10 +50,6 @@ static char rcsid[] = "$FreeBSD$"; int __mlocale_changed = 1; int __nlocale_changed = 1; -/* XXX: FIXME! */ -/* Numbers separated by ";" must be parsed into byte array. */ -static char nogrouping[] = { CHAR_MAX, '\0' }; - static char cnv(char *str) { int i = strtol(str, NULL, 10); @@ -82,9 +78,7 @@ localeconv() M_ASSIGN_STR(currency_symbol); M_ASSIGN_STR(mon_decimal_point); M_ASSIGN_STR(mon_thousands_sep); - /* XXX: FIXME! */ - /* Numbers separated by ";" must be parsed into byte array. */ - ret.mon_grouping = nogrouping; + M_ASSIGN_STR(mon_grouping); M_ASSIGN_STR(positive_sign); M_ASSIGN_STR(negative_sign); M_ASSIGN_CHAR(int_frac_digits); @@ -107,9 +101,7 @@ localeconv() nptr = __get_current_numeric_locale(); N_ASSIGN_STR(decimal_point); N_ASSIGN_STR(thousands_sep); - /* XXX: FIXME! */ - /* Numbers separated by ";" must be parsed into byte array. */ - ret.grouping = nogrouping; + N_ASSIGN_STR(grouping); __nlocale_changed = 0; } |