Skip to content
Browse files

Pull file from xml value only if it's a Hash. Closes #8190.

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6583 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
  • Loading branch information...
1 parent 15f06ea commit ddd243a9c11b54fd13328a86a34ae997f63cb839 @jeremy jeremy committed
View
4 activesupport/lib/active_support/core_ext/hash/conversions.rb
@@ -173,7 +173,7 @@ def typecast_xml_value(value)
# Turn { :files => { :file => #<StringIO> } into { :files => #<StringIO> } so it is compatible with
# how multipart uploaded files from HTML appear
- if xml_value && xml_value["file"].is_a?(StringIO)
+ if xml_value.is_a?(Hash) && xml_value["file"].is_a?(StringIO)
xml_value["file"]
else
xml_value
@@ -218,4 +218,4 @@ def undasherize_keys(params)
end
end
end
-end
+end
View
6 activesupport/test/core_ext/hash_ext_test.rb
@@ -572,6 +572,12 @@ def test_kernel_method_names_to_xml
assert_equal expected, hash.to_xml(@xml_options)
end
end
+
+ def test_empty_string_works_for_typecast_xml_value
+ assert_nothing_raised do
+ Hash.send(:typecast_xml_value, "")
+ end
+ end
end
class QueryTest < Test::Unit::TestCase

0 comments on commit ddd243a

Please sign in to comment.
Something went wrong with that request. Please try again.