なかだです。

At Wed, 3 Aug 2005 00:03:17 +0900,
IWATSUKI Hiroyuki wrote in [ruby-dev:26711]:
> これは正しい状態でしょうか?

すいません、間違えました。つい省略していけないところまでファイ
ルアクセスを省略してしまいました。

これでどうでしょう。


Index: eval.c =================================================================== RCS file: /cvs/ruby/src/ruby/eval.c,v retrieving revision 1.808 diff -U2 -p -r1.808 eval.c --- eval.c 29 Jul 2005 00:59:55 -0000 1.808 +++ eval.c 2 Aug 2005 16:59:33 -0000 @@ -6851,5 +6851,5 @@ static st_table *loading_tbl; #endif -static char * +static int rb_feature_p(feature, ext, rb) const char *feature, *ext; @@ -6874,12 +6874,12 @@ rb_feature_p(feature, ext, rb) if (!*(e = f + len)) { if (ext) continue; - return e; + return 'r'; } if (*e != '.') continue; if ((!rb || !ext) && (IS_SOEXT(e) || IS_DLEXT(e))) { - return e; + return 's'; } if ((rb || !ext) && (strcmp(e, ".rb") == 0)) { - return e; + return 'r'; } } @@ -7042,6 +7042,6 @@ search_required(fname, path) } } - else if (ext = rb_feature_p(ftptr, 0, Qfalse)) { - return (*ext && (IS_SOEXT(ext) || IS_DLEXT(ext))) ? 's' : 'r'; + else if (rb_feature_p(ftptr, 0, Qfalse) == 'r') { + return 'r'; } tmp = fname; @@ -7051,9 +7051,5 @@ search_required(fname, path) case 0: ftptr = RSTRING(tmp)->ptr; - if ((ext = rb_feature_p(ftptr, 0, Qfalse))) { - type = strcmp(".rb", ext); - break; - } - return 0; + return rb_feature_p(ftptr, 0, Qfalse); default:
-- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦