[#37248] [Feature:1.9] Enumerator#inspect — "Yusuke ENDOH" <mame@...>

遠藤です。

12 messages 2008/12/02

[#37337] [Feature #841] Object#self — "rubikitch ." <redmine@...>

Feature #841: Object#self

13 messages 2008/12/09

[#37513] Current status of 1.9.1 RC1's issues — "Yugui (Yuki Sonoda)" <yugui@...>

Hi, folks

14 messages 2008/12/20
[#37516] Re: Current status of 1.9.1 RC1's issues — Masatoshi SEKI <m_seki@...> 2008/12/20

咳といいます。

[#37576] [BUG:trunk] encoding for stdio's — "Yugui (Yuki Sonoda)" <yugui@...>

Yuguiです。

11 messages 2008/12/24

[ruby-dev:37409] [BUG:trunk] r20625 default_internal is nil.

From: Takao Kouji <kouji@...7.net>
Date: 2008-12-12 15:48:09 UTC
List: ruby-dev #37409
高尾宏治です。

trunk の r20625 以降、コマンドラインオプションで渡した
default_internal が nil になっています。

$ svn up -r20624 && make && ./ruby -Eutf-8:utf-8 -e 'p([Encoding.default_external, Encoding.default_internal])'
[#<Encoding:UTF-8>, #<Encoding:UTF-8>]

$ svn up -r20624 && make && ./ruby -Eutf-8:utf-8 -e 'p([Encoding.default_external, Encoding.default_internal])'
[#<Encoding:UTF-8>, nil]

調べたところ、コマンドラインオプションの default_internal を適切に処理したあとで、
shebang の default_internal を解析します。
そして、shebang に default_internal の指定がなかった場合、
強制的に default_internal に nil を設定しているようです。
r20624 までは、default_internal を再設定できなかったため問題なかったようです。

以下の修正で手元では問題が解決しています。

Index: ruby.c
===================================================================
--- ruby.c	(revision 20679)
+++ ruby.c	(working copy)
@@ -1244,7 +1244,7 @@
 	enc = rb_enc_from_index(opt->intern.enc.index);
 	rb_enc_set_default_internal(rb_enc_from_encoding(enc));
     }
-    else
+    else if (!rb_default_internal_encoding())
 	/* Freeze default_internal */
 	rb_enc_set_default_internal(Qnil);
 




In This Thread

Prev Next