diff options
Diffstat (limited to 'iconv/gconv_charset.h')
-rw-r--r-- | iconv/gconv_charset.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/iconv/gconv_charset.h b/iconv/gconv_charset.h index 278bccc8d5..76a92a15ab 100644 --- a/iconv/gconv_charset.h +++ b/iconv/gconv_charset.h @@ -19,6 +19,7 @@ 02111-1307 USA. */ #include <ctype.h> +#include <locale.h> static inline void @@ -28,8 +29,9 @@ strip (char *wp, const char *s) while (*s != '\0') { - if (isalnum (*s) || *s == '_' || *s == '-' || *s == '.') - *wp++ = toupper (*s); + if (__isalnum_l (*s, &_nl_C_locobj) + || *s == '_' || *s == '-' || *s == '.') + *wp++ = __toupper_l (*s, &_nl_C_locobj); else if (*s == '/') { if (++slash_count == 3) @@ -50,7 +52,7 @@ static char * __attribute__ ((unused)) upstr (char *dst, const char *str) { char *cp = dst; - while ((*cp++ = toupper (*str++)) != '\0') + while ((*cp++ = __toupper_l (*str++, &_nl_C_locobj)) != '\0') /* nothing */; return dst; } |