From 5a2758ed1e59fcb6e2f2c75a2e7412485f34927e Mon Sep 17 00:00:00 2001 From: usa Date: Thu, 3 Nov 2011 15:19:24 +0000 Subject: [PATCH] * encoding.c (rb_locale_charmap): ignore calling nl_langinfo_codeset() on Windows except cygwin. [experimental] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ encoding.c | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) 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();