まつもと ゆきひろです

In message "[ruby-dev:21764] Re: ruby 1.8.1 preview1 schedule"
    on 03/10/29, Tietew <tietew-ml-ruby-dev / tietew.net> writes:

|> CGI::Sessionを使い込んでない私のために、どんな風に動かないの
|> か説明していただけませんか?
|
|すいません。なんか session_id に CGI::Value を渡してしまっていた
|のですが,以下のエラーが出てました。
|
|TypeError: `to_a' did not return Array
|	from /usr/local/lib/ruby/1.8/cgi.rb:804:in `Array'
|	(snip)
|
|でもって,よくよく調べたら CGI::Value を strip してから渡すとこ
|れになるようです。

ふむ。以下のパッチで事態は変化しますか?

--- lib/cgi.rb	29 Oct 2003 06:53:48 -0000	1.62
+++ lib/cgi.rb	29 Oct 2003 12:44:13 -0000
@@ -1154,7 +1154,5 @@ class CGI
       def to_a
-        @params
-      end
-      def to_ary                # to be rhs of multiple assignment
-        @params
+        @params || [self]
       end
+      alias to_ary to_a   # to be rhs of multiple assignment
     end