aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--actionpack/CHANGELOG2
-rwxr-xr-xactionpack/lib/action_controller/request.rb2
-rw-r--r--actionpack/test/controller/request_test.rb6
3 files changed, 6 insertions, 4 deletions
diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG
index 8fc1201d6d..8e18d8e4ed 100644
--- a/actionpack/CHANGELOG
+++ b/actionpack/CHANGELOG
@@ -1,5 +1,7 @@
*SVN*
+* Fixed that file.content_type for uploaded files would include a trailing \r #9053 [bgreenlee]
+
* url_for now accepts a series of symbols representing the namespace of the record [Josh Knowles]
* Make :trailing_slash work with query parameters for url_for. Closes #4004 [nov]
diff --git a/actionpack/lib/action_controller/request.rb b/actionpack/lib/action_controller/request.rb
index 528f076c24..bab265f77e 100755
--- a/actionpack/lib/action_controller/request.rb
+++ b/actionpack/lib/action_controller/request.rb
@@ -542,7 +542,7 @@ module ActionController
filename = CGI.unescape(filename)
end
- /Content-Type: (.*)/ni.match(head)
+ /Content-Type: ([^\r]*)/ni.match(head)
content_type = ($1 or "")
(class << content; self; end).class_eval do
diff --git a/actionpack/test/controller/request_test.rb b/actionpack/test/controller/request_test.rb
index b45e7f8771..19ae17c171 100644
--- a/actionpack/test/controller/request_test.rb
+++ b/actionpack/test/controller/request_test.rb
@@ -667,7 +667,7 @@ class MultipartRequestParameterParsingTest < Test::Unit::TestCase
file = params['file']
assert_kind_of StringIO, file
assert_equal 'file.txt', file.original_filename
- assert_equal "text/plain\r", file.content_type
+ assert_equal "text/plain", file.content_type
assert_equal 'contents', file.read
end
@@ -679,7 +679,7 @@ class MultipartRequestParameterParsingTest < Test::Unit::TestCase
file = params['file']
assert_kind_of Tempfile, file
assert_equal 'file.txt', file.original_filename
- assert_equal "text/plain\r", file.content_type
+ assert_equal "text/plain", file.content_type
assert ('a' * 20480) == file.read
end
@@ -697,7 +697,7 @@ class MultipartRequestParameterParsingTest < Test::Unit::TestCase
file = params['flowers']
assert_kind_of StringIO, file
assert_equal 'flowers.jpg', file.original_filename
- assert_equal "image/jpeg\r", file.content_type
+ assert_equal "image/jpeg", file.content_type
assert_equal 19512, file.size
#assert_equal File.read(File.dirname(__FILE__) + '/../../../activerecord/test/fixtures/flowers.jpg'), file.read
end