>>>>> In [ruby-dev : No.23762] >>>>> matz / ruby-lang.org (Yukihiro Matsumoto) wrote: > そろそろ1.8.2をリリースしたいのですが、これをやっておきたい > とかいうことがある人はいますか。また、ここを直しておいてほし > いというバグを見つけている人はいますか? Tempfileで作る一時ファイルのsuffixを指定できるようにしたい という要望があったことを思い出しました。 理由は、一時ファイルをw3mで参照させたいといったときに w3mがsuffixでファイルのタイプを判別している(*1)ために うまくないといったことです。 # (*1) 正確には、他の事情によって-Tでタイプ指定できないためです。 私が聞いたその話についてはinitializeの引数を増やして 対応するほどの強い要望ではなさそうだったので、 次のような変更を加えることができれば良さそうかなと考えました。 いかがなものでしょうか。 --- tempfile.rb 7 May 2004 08:48:23 -0000 1.19.2.1 +++ tempfile.rb 29 Jun 2004 05:11:45 -0000 @@ -33,7 +33,7 @@ Thread.critical = true begin - tmpname = sprintf('%s/%s%d.%d', tmpdir, basename, $$, n) + tmpname = File.join(tmpdir, make_tmpname(basename, $$, n)) lock = tmpname + '.lock' n += 1 end while @@cleanlist.include?(tmpname) or @@ -65,6 +65,11 @@ Dir.rmdir(lock) end + + def make_tmpname(basename, pid, n) + sprintf('%s%d.%d', basename, pid, n) + end + private :make_tmpname # Opens or reopens the file with mode "r+". def open -- やまだあきら <URL:http://arika.org> Vine Caves, Ltd. <URL:http://vinecaves.com>