OSDN Git Service

* libc/locale/locale.c (lc_ctype_charset): Disable defaulting to
authorcorinna <corinna>
Sun, 17 Jan 2010 09:39:05 +0000 (09:39 +0000)
committercorinna <corinna>
Sun, 17 Jan 2010 09:39:05 +0000 (09:39 +0000)
"UTF-8" on Cygwin.
(lc_message_charset): Ditto.
(loadlocale): Disable setting charset of the "C" locale to "UTF-8" on
Cygwin.
* libc/stdlib/mbtowc_r.c (__mbtowc): Add Cygwin-specific comment.
* libc/stdlib/wctomb_r.c (__wctomb): Ditto.

newlib/ChangeLog
newlib/libc/locale/locale.c
newlib/libc/stdlib/mbtowc_r.c
newlib/libc/stdlib/wctomb_r.c

index cd9b524..1df8968 100644 (file)
@@ -1,3 +1,13 @@
+2010-01-17  Corinna Vinschen  <corinna@vinschen.de>
+
+       * libc/locale/locale.c (lc_ctype_charset): Disable defaulting to
+       "UTF-8" on Cygwin.
+       (lc_message_charset): Ditto.
+       (loadlocale): Disable setting charset of the "C" locale to "UTF-8" on
+       Cygwin.
+       * libc/stdlib/mbtowc_r.c (__mbtowc): Add Cygwin-specific comment.
+       * libc/stdlib/wctomb_r.c (__wctomb): Ditto.
+
 2010-01-14  Corinna Vinschen  <corinna@vinschen.de>
 
        * libc/include/sys/_default_fcntl.h (O_CLOEXEC): Define as _FNOINHERIT.
index 311a438..8a74034 100644 (file)
@@ -242,7 +242,7 @@ static const char *__get_locale_env(struct _reent *, int);
 
 #endif
 
-#ifdef __CYGWIN__
+#if 0 /*def __CYGWIN__  TODO: temporarily(?) disable C == UTF-8 */
 static char lc_ctype_charset[ENCODING_LEN + 1] = "UTF-8";
 static char lc_message_charset[ENCODING_LEN + 1] = "UTF-8";
 #else
@@ -450,7 +450,7 @@ loadlocale(struct _reent *p, int category)
   if (!strcmp (locale, "POSIX"))
     strcpy (locale, "C");
   if (!strcmp (locale, "C"))                           /* Default "C" locale */
-#ifdef __CYGWIN__
+#if 0 /*def __CYGWIN__  TODO: temporarily(?) disable C == UTF-8 */
     strcpy (charset, "UTF-8");
 #else
     strcpy (charset, "ASCII");
index f161385..7c6be69 100644 (file)
@@ -10,6 +10,7 @@
 int (*__mbtowc) (struct _reent *, wchar_t *, const char *, size_t,
                 const char *, mbstate_t *)
 #ifdef __CYGWIN__
+   /* Cygwin starts up in UTF-8 mode. */
    = __utf8_mbtowc;
 #else
    = __ascii_mbtowc;
index d1ee497..98a0b74 100644 (file)
@@ -9,6 +9,7 @@
 int (*__wctomb) (struct _reent *, char *, wchar_t, const char *charset,
                 mbstate_t *)
 #ifdef __CYGWIN__
+   /* Cygwin starts up in UTF-8 mode. */
     = __utf8_wctomb;
 #else
     = __ascii_wctomb;