From: Tietew Date: 2007-09-11T17:04:26+09:00 Subject: [ruby-dev:31774] RSTRING(value)->ptr == NULL ? Tietew です。 RString::ptr が NULL な String をライブラリに渡した際に SEGV を 起こすことがあります。 具体的には例えば require 'rubygems' require 'idn' IDN::Idna.toASCII(" ".chop.downcase) が SEGV ります。 idna.c は rb_check_convert_type(str, T_STRING, "String", "to_s"); を呼んでいますが、StringValue() はしていません。 んで RSTRING(str)->ptr が NULL のママ idna_to_ascii_8z を呼んで、 その中で SEGV します。 これは StringValue() しない idna.c が悪いんでしょうか。 -- Tietew Blog: http://www.tietew.jp/ PGP: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA