diff options
Diffstat (limited to 'src/libs/gnulib/lib/localcharset.c')
-rw-r--r-- | src/libs/gnulib/lib/localcharset.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/libs/gnulib/lib/localcharset.c b/src/libs/gnulib/lib/localcharset.c index 113205de..8d16c87a 100644 --- a/src/libs/gnulib/lib/localcharset.c +++ b/src/libs/gnulib/lib/localcharset.c @@ -29,7 +29,7 @@ #include <stdlib.h> #if defined __APPLE__ && defined __MACH__ && HAVE_LANGINFO_CODESET -# define DARWIN7 /* Darwin 7 or newer, i.e. MacOS X 10.3 or newer */ +# define DARWIN7 /* Darwin 7 or newer, i.e. Mac OS X 10.3 or newer */ #endif #if defined _WIN32 || defined __WIN32__ @@ -542,5 +542,12 @@ locale_charset (void) if (codeset[0] == '\0') codeset = "ASCII"; +#ifdef DARWIN7 + /* Mac OS X sets MB_CUR_MAX to 1 when LC_ALL=C, and "UTF-8" + (the default codeset) does not work when MB_CUR_MAX is 1. */ + if (strcmp (codeset, "UTF-8") == 0 && MB_CUR_MAX <= 1) + codeset = "ASCII"; +#endif + return codeset; } |