From 52d3f5c7f82e07aa4bfaefd503b15c9017fa9f97 Mon Sep 17 00:00:00 2001 From: naruse Date: Tue, 29 Sep 2009 12:31:43 +0000 Subject: * io.c (rb_scan_open_args): add UTF8-MAC to no-convertion encoding. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@25157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ io.c | 8 +++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1f7695222..44e647b2f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Tue Sep 29 21:16:35 2009 NARUSE, Yui + + * io.c (rb_scan_open_args): add UTF8-MAC to no-convertion encoding. + Tue Sep 29 21:21:15 2009 Nobuyoshi Nakada * configure.in (--enable-pthread): deprecated. diff --git a/io.c b/io.c index 90fa2339a..586e7b5bd 100644 --- a/io.c +++ b/io.c @@ -5307,17 +5307,19 @@ rb_scan_open_args(int argc, VALUE *argv, opt = pop_last_hash(&argc, argv); rb_scan_args(argc, argv, "12", &fname, &vmode, &vperm); FilePathValue(fname); -#if defined __APPLE__ +#ifdef __APPLE__ { static rb_encoding *fs_encoding; + static rb_encoding *utf8mac_encoding; rb_encoding *fname_encoding = rb_enc_get(fname); if (!fs_encoding) fs_encoding = rb_filesystem_encoding(); + if (!utf8mac_encoding) + utf8mac_encoding = rb_enc_find("UTF8-MAC"); if (rb_usascii_encoding() != fname_encoding && rb_ascii8bit_encoding() != fname_encoding -#if defined __APPLE__ && rb_utf8_encoding() != fname_encoding -#endif + && rb_utf8mac_encoding() != fname_encoding && fs_encoding != fname_encoding) { static VALUE fs_enc; if (!fs_enc) -- cgit