summaryrefslogtreecommitdiff
path: root/lib/cgi
diff options
context:
space:
mode:
authorxibbar <xibbar@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-20 12:29:29 +0000
committerxibbar <xibbar@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-20 12:29:29 +0000
commit225d2af65ad3b05e74b31376bc929238ddede719 (patch)
treef9c1076c96fe9cf638324e8d264e84defe84672f /lib/cgi
parent71b832dd8ec46647bdf789ee453be51300402627 (diff)
* lib/cgi/core.rb (read_multipart): file's encoding is ascii-8bit
from file field of multipart form. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/cgi')
-rw-r--r--lib/cgi/core.rb12
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/cgi/core.rb b/lib/cgi/core.rb
index f2bbb0a619..3a934c928b 100644
--- a/lib/cgi/core.rb
+++ b/lib/cgi/core.rb
@@ -495,14 +495,14 @@ class CGI
def create_body(is_large) #:nodoc:
if is_large
require 'tempfile'
- body = Tempfile.new('CGI')
+ body = Tempfile.new('CGI', encoding: "ascii-8bit")
else
begin
require 'stringio'
- body = StringIO.new
+ body = StringIO.new("".force_encoding("ascii-8bit"))
rescue LoadError
require 'tempfile'
- body = Tempfile.new('CGI')
+ body = Tempfile.new('CGI', encoding: "ascii-8bit")
end
end
body.binmode if defined? body.binmode
@@ -568,7 +568,7 @@ class CGI
read_from_cmdline
end.dup.force_encoding(@accept_charset)
)
- unless @accept_charset=="ASCII-8BIT" || @accept_charset==Encoding::ASCII_8BIT
+ unless @accept_charset=~/ASCII-8BIT/i || @accept_charset==Encoding::ASCII_8BIT
@params.each do |key,values|
values.each do |value|
unless value.valid_encoding?
@@ -603,9 +603,9 @@ class CGI
if value
return value
elsif defined? StringIO
- StringIO.new("")
+ StringIO.new("".force_encoding("ascii-8bit"))
else
- Tempfile.new("CGI")
+ Tempfile.new("CGI",encoding:"ascii-8bit")
end
else
str = if value then value.dup else "" end