diff options
author | Rich Felker <dalias@aerifal.cx> | 2015-05-27 03:22:52 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2015-05-27 03:27:59 -0400 |
commit | 61a3364d246e72b903da8b76c2e27a225a51351e (patch) | |
tree | 8845c8e1798280285b6f0b27244d978eb602c300 /src/locale/__lctrans.c | |
parent | 63c188ec42e76ff768e81f6b65b11c68fc43351e (diff) | |
download | musl-61a3364d246e72b903da8b76c2e27a225a51351e.tar.gz musl-61a3364d246e72b903da8b76c2e27a225a51351e.tar.xz musl-61a3364d246e72b903da8b76c2e27a225a51351e.zip |
overhaul locale internals to treat categories roughly uniformly
previously, LC_MESSAGES was treated specially as the only category which could be set to a locale name without a definition file, in order to facilitate gettext message translations when no libc locale was available. LC_NUMERIC was completely un-settable, and LC_CTYPE stored a flag intended to be used for a possible future byte-based C locale, instead of storing a __locale_map pointer like the other categories use. this patch changes all categories to be represented by pointers to __locale_map structures, and allows locale names without definition files to be treated as valid locales with trivial definition when used in any category. outwardly visible functional changes should be minor, limited mainly to the strings read back from setlocale and the way gettext handles translations in categories other than LC_MESSAGES. various internal refactoring has also been performed, and improvements in const correctness have been made.
Diffstat (limited to 'src/locale/__lctrans.c')
-rw-r--r-- | src/locale/__lctrans.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/locale/__lctrans.c b/src/locale/__lctrans.c index 15994c57..107fe14a 100644 --- a/src/locale/__lctrans.c +++ b/src/locale/__lctrans.c @@ -16,5 +16,5 @@ const char *__lctrans(const char *msg, const struct __locale_map *lm) const char *__lctrans_cur(const char *msg) { - return __lctrans_impl(msg, CURRENT_LOCALE->cat[LC_MESSAGES-2]); + return __lctrans_impl(msg, CURRENT_LOCALE->cat[LC_MESSAGES]); } |