diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-09 03:39:04 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-09 03:39:04 +0000 |
commit | ee1717dc3e0b5409634e86870464fb9c5c32dbd2 (patch) | |
tree | 90eb9bebca960d87da10924751d571bf6ccd33c6 /lib | |
parent | d8ac63440bc5090355e03f781f13cccbad38b904 (diff) |
* lib/cgi.rb (read_multipart): exclude blanks from header values.
[ruby-list:44327]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@14153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
-rw-r--r-- | lib/cgi.rb | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/cgi.rb b/lib/cgi.rb index a442d44930..ccc48d8836 100644 --- a/lib/cgi.rb +++ b/lib/cgi.rb @@ -1032,13 +1032,13 @@ class CGI if "--" == $2 content_length = -1 end - boundary_end = $2.dup + boundary_end = $2.dup "" end body.rewind - /Content-Disposition:.* filename=(?:"((?:\\.|[^\"])*)"|([^;]*))/ni.match(head) + /Content-Disposition:.* filename=(?:"((?:\\.|[^\"\s])*)"|([^;\s]*))/ni.match(head) filename = ($1 or $2 or "") if /Mac/ni.match(env_table['HTTP_USER_AGENT']) and /Mozilla/ni.match(env_table['HTTP_USER_AGENT']) and @@ -1046,7 +1046,7 @@ class CGI filename = CGI::unescape(filename) end - /Content-Type: (.*)/ni.match(head) + /Content-Type: ([^\s]*)/ni.match(head) content_type = ($1 or "") (class << body; self; end).class_eval do @@ -1055,7 +1055,7 @@ class CGI define_method(:content_type) {content_type.dup.taint} end - /Content-Disposition:.* name="?([^\";]*)"?/ni.match(head) + /Content-Disposition:.* name="?([^\";\s]*)"?/ni.match(head) name = $1.dup if params.has_key?(name) |