summaryrefslogtreecommitdiffstats
path: root/lib/webrick/httpservlet/cgihandler.rb
diff options
context:
space:
mode:
authorgotoyuzo <gotoyuzo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-10-30 20:40:05 +0000
committergotoyuzo <gotoyuzo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-10-30 20:40:05 +0000
commitcdff583f6f12d538d325746b337aeba1befa9177 (patch)
treeb99fad14a7dd6b050acdb6793ac7127d05fd440c /lib/webrick/httpservlet/cgihandler.rb
parent81eeef303f4972afca08179b9c6d743330243a3b (diff)
downloadruby-cdff583f6f12d538d325746b337aeba1befa9177.tar.gz
ruby-cdff583f6f12d538d325746b337aeba1befa9177.tar.xz
ruby-cdff583f6f12d538d325746b337aeba1befa9177.zip
* lib/webrick/httpservlet/cgihandler.rb
(WEBrick::HTTPServlet::CGIHandler#do_GET): the value of Set-Cookie: header field should be splited into each cookie. [ruby-Bugs:2199] * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookie): new method to parse the value of Set-Cookie: header field. * test/webrick/test_cookie.rb, test/webrick/test_cgi.rb, test/webrick/webrick.cgi: add some test for cookie. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@9484 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/webrick/httpservlet/cgihandler.rb')
-rw-r--r--lib/webrick/httpservlet/cgihandler.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/webrick/httpservlet/cgihandler.rb b/lib/webrick/httpservlet/cgihandler.rb
index 7dd330ba7..a35b59edb 100644
--- a/lib/webrick/httpservlet/cgihandler.rb
+++ b/lib/webrick/httpservlet/cgihandler.rb
@@ -85,6 +85,12 @@ module WEBrick
res.status = $1.to_i
header.delete('status')
end
+ if header.has_key?('set-cookie')
+ header['set-cookie'].each{|k|
+ res.cookies << Cookie.parse_set_cookie(k)
+ }
+ header.delete('set-cookie')
+ end
header.each{|key, val| res[key] = val.join(", ") }
rescue => ex
raise HTTPStatus::InternalServerError, ex.message