From d4a2242ce61441d0901cb750d497be08ff5ef4f6 Mon Sep 17 00:00:00 2001 From: tenderlove Date: Sat, 28 Nov 2009 21:40:59 +0000 Subject: * lib/rexml/formatters/default.rb (write_attribute): fix an exception when printing a document when duplicate namespaced attributes exist. Thanks, Alexey Froloff [ruby-core:2389] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@25956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/rexml/formatters/default.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'lib/rexml') diff --git a/lib/rexml/formatters/default.rb b/lib/rexml/formatters/default.rb index 56a1d9378..db44453e1 100644 --- a/lib/rexml/formatters/default.rb +++ b/lib/rexml/formatters/default.rb @@ -63,7 +63,9 @@ module REXML def write_element( node, output ) output << "<#{node.expanded_name}" - node.attributes.to_a.sort_by {|attr| attr.name}.each do |attr| + node.attributes.to_a.map { |a| + Hash === a ? a.values : a + }.flatten.sort_by {|attr| attr.name}.each do |attr| output << " " attr.write( output ) end unless node.attributes.empty? -- cgit