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

ruby-changes:12624

From: naruse <ko1@a...>
Date: Fri, 31 Jul 2009 16:37:19 +0900 (JST)
Subject: [ruby-changes:12624] Ruby:r24337 (trunk): Set encodings of stdio after setting default internal and external.

naruse	2009-07-31 16:37:02 +0900 (Fri, 31 Jul 2009)

  New Revision: 24337

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

  Log:
    Set encodings of stdio after setting default internal and external.
    * io.c (rb_stdio_set_default_encoding): added.
    
    * ruby.c (process_options): call rb_stdio_set_default_encoding
      after setting defualt internal and external.

  Modified files:
    trunk/ChangeLog
    trunk/io.c
    trunk/ruby.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 24336)
+++ ChangeLog	(revision 24337)
@@ -1,3 +1,10 @@
+Fri Jul 31 16:28:33 2009  NARUSE, Yui  <naruse@r...>
+
+	* io.c (rb_stdio_set_default_encoding): added.
+
+	* ruby.c (process_options): call rb_stdio_set_default_encoding
+	  after setting defualt internal and external.
+
 Fri Jul 31 15:06:33 2009  NAKAMURA Usaku  <usa@r...>
 
 	* tool/compile_prelude.rb: too long string literal causes compile error
Index: io.c
===================================================================
--- io.c	(revision 24336)
+++ io.c	(revision 24337)
@@ -8407,6 +8407,17 @@
     return io;
 }
 
+void
+rb_stdio_set_default_encoding()
+{
+    extern VALUE rb_stdin, rb_stdout, rb_stderr;
+    VALUE val = Qnil;
+
+    rb_io_set_encoding(1, &val, rb_stdin);
+    rb_io_set_encoding(1, &val, rb_stdout);
+    rb_io_set_encoding(1, &val, rb_stderr);
+}
+
 static VALUE
 argf_external_encoding(VALUE argf)
 {
Index: ruby.c
===================================================================
--- ruby.c	(revision 24336)
+++ ruby.c	(revision 24337)
@@ -1399,6 +1399,7 @@
     else if (!rb_default_internal_encoding())
 	/* Freeze default_internal */
 	rb_enc_set_default_internal(Qnil);
+    rb_stdio_set_default_encoding();
 
     if (!tree) return Qfalse;
 

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

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