Bug #862

r20625 default_internal is nil.

Added by Kouji Takao about 3 years ago. Updated 10 months ago.

[ruby-dev:37409]
Status:Closed Start date:
Priority:Normal Due date:
Assignee:Nobuyoshi Nakada % Done:

100%

Category:-
Target version:1.9.1 Release Candidate
ruby -v:

Description

高尾宏治です。

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);

Associated revisions

Revision 20720
Added by Kouji Takao about 3 years ago

* ruby.c (process_options): fixed default_internal is nil. (closes #862)

Revision 20720
Added by Kouji Takao about 3 years ago

* ruby.c (process_options): fixed default_internal is nil. (closes #862)

History

Updated by Yuki Sonoda about 3 years ago

  • Assignee set to Nobuyoshi Nakada
  • Priority changed from Low to Normal
  • Target version set to 1.9.1 Release Candidate

Updated by Yukihiro Matsumoto about 3 years ago

まつもと ゆきひろです

In message "Re: [ruby-dev:37409] [BUG:trunk] r20625 default_internal is nil."
    on Sat, 13 Dec 2008 00:48:09 +0900, Takao Kouji <kouji@takao7.net> writes:

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

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

コミットしてください。

Updated by Kouji Takao about 3 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100
Applied in changeset r20720.

Also available in: Atom PDF