From: Takaaki Tateishi Date: 2002-08-05T17:28:22+09:00 Subject: [ruby-dev:17925] Re: ruby-bugs-ja incoming/277 At Sat, 3 Aug 2002 05:53:29 +0900, > > す.バグ報告(ruby-bugs-ja incoming/277)をしたのですが,添えた > > パッチだと正常にrubyが機能しなくなります.すいません. > > 度々すいません.このバグですが,僕の環境のせいかもしれません. e_scriptがGCで回収されてしまっているようでしたが,どうなのでしょう? 一応,以下の修正で問題だった make install も動くようになりました. この修正がなく, $ ruby -r ftools -e "p 1" などでSEGVする場合,load_libraries()の前後でRSTRING(e_script)->ptrの 値が変わっているようでした. -- Takaaki Tateishi Index: ruby.c =================================================================== RCS file: /src/ruby/ruby.c,v retrieving revision 1.62 diff -u -r1.62 ruby.c --- ruby.c 2002/05/29 05:20:33 1.62 +++ ruby.c 2002/08/05 08:22:57 @@ -491,6 +491,7 @@ } if (!e_script) { e_script = rb_str_new(0,0); + rb_gc_register_address(&e_script); if (script == 0) script = "-e"; } rb_str_cat2(e_script, s); @@ -719,6 +720,7 @@ if (e_script) { require_libraries(); rb_compile_string(script, e_script, 1); + rb_gc_unregister_address(&e_script); } else if (strlen(script) == 1 && script[0] == '-') { load_stdin();