From: Masaya TARUI Date: 2010-04-09T19:08:26+09:00 Subject: [ruby-dev:40939] Re: [Bug:trunk] Dir.[] returns unmatched path 樽家といいます。 dir.cにおいて、ruby_brace_expand関数のstrがwhile(psvn diff dir.c Index: dir.c =================================================================== --- dir.c (リビジョン 27267) +++ dir.c (作業コピー) @@ -1622,14 +1622,17 @@ { struct glob_args args; rb_encoding *enc = rb_enc_get(str); + int ret; if (enc == rb_usascii_encoding()) enc = rb_filesystem_encoding(); args.func = push_pattern; args.value = ary; args.enc = enc; - - return ruby_brace_glob0(RSTRING_PTR(str), flags | GLOB_VERBOSE, - rb_glob_caller, (VALUE)&args, enc); + + ret = ruby_brace_glob0(RSTRING_PTR(str), flags | GLOB_VERBOSE, + rb_glob_caller, (VALUE)&args, enc); + RB_GC_GUARD(str); + return ret; } static VALUE 2010年2月27日13:35 U.Nakamura : > こんにちは、なかむら(う)です。 > > In message "[ruby-dev:40518] Re: [Bug:trunk] Dir.[] returns unmatched path" > on Feb.27,2010 13:17:21, wrote: >> > ところで、ruby -v(というかリビジョン)は? >> >> あ、すみません。 >> >> $ ./ruby -v t.rb >> ruby 1.9.2dev (2010-02-26) [i386-mingw32] >> "C:/Ruby/ruby/" >> >> です。 > > ふうむ、ちなみにこちらでは2010-02-08でも大丈夫でした。 > > >> 不思議なことに miniruby だとちゃんと動きました。 >> >> $ ./miniruby.exe -v t.rb >> ruby 1.9.2dev (2010-02-26) [i386-mingw32] >> "C:/Ruby/ruby/ext/bigdecimal/extconf.rb" > > なにそれこわい。 > > minirubyとrubyでglobに違いはないような... ... > あ、ありました。encoding絡み。 > でもシステムから取ってるからやっぱり同じ結果になるような気も > するんだけどなあ。 > > > それでは。 > -- > U.Nakamura > > > -- Masaya TARUI mailto: tarui@prx.jp