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/