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