summaryrefslogtreecommitdiffstats
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
commitf30e4e7d846b33b7adf98eac7695c47234f48d4a (patch)
tree095315717e3050b4acb09d91e848dc2e3d0b2b5f /lib/cgi.rb
parent4a63aea75bf3c7eb1a26ab06d8a56789fa668a79 (diff)
downloadruby-f30e4e7d846b33b7adf98eac7695c47234f48d4a.tar.gz
ruby-f30e4e7d846b33b7adf98eac7695c47234f48d4a.tar.xz
ruby-f30e4e7d846b33b7adf98eac7695c47234f48d4a.zip
2000-03-06
git-svn-id: http://svn.ruby-lang.org/repos/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 e2ba3141b..b97390499 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