summaryrefslogtreecommitdiff
path: root/lib/cgi.rb
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2000-03-06 04:15:42 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2000-03-06 04:15:42 +0000
commitd7b8e448bfd29042f64ed3535dc21014b9259088 (patch)
tree095315717e3050b4acb09d91e848dc2e3d0b2b5f /lib/cgi.rb
parentb014cc337ef28498311f58a7b28bdfffebc53f00 (diff)
2000-03-06
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/cgi.rb')
-rw-r--r--lib/cgi.rb5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/cgi.rb b/lib/cgi.rb
index e2ba314..b973904 100644
--- a/lib/cgi.rb
+++ b/lib/cgi.rb
@@ -648,10 +648,12 @@ convert string charset, and set language to "ja".
=end
def Cookie::parse(raw_cookie)
cookies = Hash.new([])
+ return cookies unless raw_cookie
raw_cookie.split('; ').each do |pairs|
name, values = pairs.split('=',2)
name = CGI::unescape(name)
+ values ||= ""
values = values.split('&').filter{|v| CGI::unescape(v) }
if cookies.has_key?(name)
cookies[name].value.push(*values)
@@ -877,8 +879,7 @@ convert string charset, and set language to "ja".
)
end
- @cookies = CGI::Cookie::parse((env_table['HTTP_COOKIE'] or
- env_table['COOKIE'] or ""))
+ @cookies = CGI::Cookie::parse((env_table['HTTP_COOKIE'] or env_table['COOKIE']))
end
private :initialize_query