diff --git a/ChangeLog b/ChangeLog index 98a8b2dc54..631f352cd3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Nov 3 23:53:04 2011 NAKAMURA Usaku + + * encoding.c (rb_locale_charmap): ignore calling nl_langinfo_codeset() + on Windows except cygwin. [experimental] + Thu Nov 3 22:45:09 2011 Tanaka Akira * ext/socket/socket.c (rsock_socketpair0): extracted from diff --git a/encoding.c b/encoding.c index 3e4892b2e2..0aac1f1509 100644 --- a/encoding.c +++ b/encoding.c @@ -1446,9 +1446,12 @@ rb_locale_charmap(VALUE klass) #if defined NO_LOCALE_CHARMAP return rb_usascii_str_new2("ASCII-8BIT"); #elif defined _WIN32 || defined __CYGWIN__ - const char *nl_langinfo_codeset(void); - const char *codeset = nl_langinfo_codeset(); + const char *codeset = 0; char cp[sizeof(int) * 3 + 4]; +# ifdef __CYGWIN__ + const char *nl_langinfo_codeset(void); + codeset = nl_langinfo_codeset(); +# endif if (!codeset) { UINT codepage = GetConsoleCP(); if(!codepage) codepage = GetACP();