From: nobu.nakada@... Date: 2003-12-11T18:45:07+09:00 Subject: [ruby-list:38893] Re: [cgi.rb] read_multipart でエラー なかだです。 At Wed, 10 Dec 2003 12:45:17 +0900, Yukihiro Matsumoto wrote: > |> とりあえず以下のような修正で動くようになりました。 > | > |stringioは常にrequireされてるわけではないからですね。そもそも > |local_pathはpathのaliasでいいんじゃないかという気がするのですが。 > > えーと、事態を把握していないうえのパッチがでかくて読み切れな > かったのですが、問題ないなら修正するのは構いません。本当は青 > 山さんに確認してほしいんだがな。 stringioがロードされるのは10KB以下のマルチパートがあるときだけ なので、それ以外のときにStringIOを参照するとエラーになるわけで す。 方法としては、大体この三つでしょう。 (1) [ruby-list:38883]のように、定数を直接使わずに名前で比較する。 (2) defined?(StringIO) && body.class == StringIO と、定義されて いるか先に確認する。 (3) local_pathを単なるpathのaliasにする。 [ruby-list:38884]のパッチは(3)なんですが、大きくなってしまった のは、local_pathだけでなくて、しばらく前に文字列のevalを減らそ うとしたときの修正が混じっているからです。分離するのがめんどく さかっただけなんですが。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦