[前][次][番号順一覧][スレッド一覧]

ruby-changes:9607

From: naruse <ko1@a...>
Date: Mon, 29 Dec 2008 11:56:32 +0900 (JST)
Subject: [ruby-changes:9607] Ruby:r21147 (trunk): revert previous changes.

naruse	2008-12-29 11:56:23 +0900 (Mon, 29 Dec 2008)

  New Revision: 21147

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=21147

  Log:
    revert previous changes.

  Modified files:
    trunk/file.c
    trunk/io.c

Index: io.c
===================================================================
--- io.c	(revision 21146)
+++ io.c	(revision 21147)
@@ -4885,7 +4885,26 @@
     opt = pop_last_hash(&argc, argv);
     rb_scan_args(argc, argv, "12", &fname, &vmode, &vperm);
     FilePathValue(fname);
-
+#if defined _WIN32 || defined __APPLE__
+    {
+	static rb_encoding *fs_encoding;
+	rb_encoding *fname_encoding = rb_enc_get(fname);
+	if (!fs_encoding)
+	    fs_encoding = rb_filesystem_encoding();
+	if (rb_usascii_encoding() != fname_encoding
+	    && rb_ascii8bit_encoding() != fname_encoding
+#if defined __APPLE__
+	    && rb_utf8_encoding() != fname_encoding
+#endif
+	    && fs_encoding != fname_encoding) {
+	    static VALUE fs_enc;
+	    if (!fs_enc)
+		fs_enc = rb_enc_from_encoding(fs_encoding);
+	    fname = rb_str_encode(fname, fs_enc, 0, Qnil);
+	}
+    }
+#endif
+ 
     rb_io_extract_modeenc(&vmode, &vperm, opt, &oflags, &fmode, convconfig_p);
 
     perm = NIL_P(vperm) ? 0666 :  NUM2UINT(vperm);
Index: file.c
===================================================================
--- file.c	(revision 21146)
+++ file.c	(revision 21147)
@@ -107,6 +107,7 @@
     tmp = rb_check_string_type(obj);
     if (!NIL_P(tmp)) goto exit;
 
+
     CONST_ID(to_path, "to_path");
     if (rb_respond_to(obj, to_path)) {
 	tmp = rb_funcall(obj, to_path, 0, 0);
@@ -119,27 +120,6 @@
     if (check && obj != tmp) {
 	rb_check_safe_obj(tmp);
     }
-
-#if defined _WIN32 || defined __APPLE__
-    {
-	static rb_encoding *fs_encoding;
-	rb_encoding *fname_encoding = rb_enc_get(tmp);
-	if (!fs_encoding)
-	    fs_encoding = rb_filesystem_encoding();
-	if (rb_usascii_encoding() != fname_encoding
-	    && rb_ascii8bit_encoding() != fname_encoding
-#if defined __APPLE__
-	    && rb_utf8_encoding() != fname_encoding
-#endif
-	    && fs_encoding != fname_encoding) {
-	    static VALUE fs_enc;
-	    if (!fs_enc)
-		fs_enc = rb_enc_from_encoding(fs_encoding);
-	    tmp = rb_str_encode(tmp, fs_enc, 0, Qnil);
-	}
-    }
-#endif
-
     return rb_str_new4(tmp);
 }
 

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]