From: "K.Kosako" Date: 2001-05-14T14:57:53+09:00 Subject: [ruby-list:29651] Re: String#index OHARA Shigekiさんの<20010514.141819.45262231.os@iij.ad.jp>から > --- string.c.orig Mon Mar 5 17:31:54 2001 > +++ string.c Mon May 14 14:02:59 2001 > @@ -635,8 +635,10 @@ > if (len == 0) return offset; > e = RSTRING(str)->ptr + RSTRING(str)->len - len + 1; > while (s < e) { > - if (rb_memcmp(s, p, len) == 0) { > - return (s-(RSTRING(str)->ptr)); > + if (*s == *e) { > + if (rb_memcmp(s, p, len) == 0) { > + return (s-(RSTRING(str)->ptr)); > + } > } > s++; > } rb_memcmp()の中身は、単なるバイト列の比較ではなくて、 ruby_ignorecaseの値に応じて処理が変わるので、 この変更はまずいのではないでしょうか? ---- 小迫@ソフネック 渋谷区恵比寿1-15-1