From d282efbeff498f2abaeb3f748a812251e76e39c4 Mon Sep 17 00:00:00 2001 From: duerst Date: Sun, 19 Jun 2016 06:01:25 +0000 Subject: * localeinit.c: Fix filesystem encoding for cygwin to UTF-8 (see https://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-unusual) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ localeinit.c | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 8d2875c20e..306b3eddaa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sun Jun 19 15:01:18 2016 Martin Duerst + + * localeinit.c: Fix filesystem encoding for cygwin to UTF-8 (see + https://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-unusual) + Sun Jun 19 14:31:07 2016 Kazuki Yamaguchi * ext/openssl/ossl_pkey.h, ext/openssl/ossl_pkey_dh.c, diff --git a/localeinit.c b/localeinit.c index 6563a6f90a..605e3bd148 100644 --- a/localeinit.c +++ b/localeinit.c @@ -100,11 +100,13 @@ Init_enc_set_filesystem_encoding(void) int idx; #if defined NO_LOCALE_CHARMAP # error NO_LOCALE_CHARMAP defined -#elif defined _WIN32 || defined __CYGWIN__ +#elif defined _WIN32 char cp[SIZEOF_CP_NAME]; CP_FORMAT(cp, AreFileApisANSI() ? GetACP() : GetOEMCP()); idx = rb_enc_find_index(cp); if (idx < 0) idx = ENCINDEX_ASCII; +#elif defined __CYGWIN__ + idx = ENCINDEX_UTF_8; #else idx = rb_enc_to_index(rb_default_external_encoding()); #endif -- cgit v1.2.3