ruby-changes:9083
From: matz <ko1@a...>
Date: Thu, 11 Dec 2008 10:20:43 +0900 (JST)
Subject: [ruby-changes:9083] Ruby:r20620 (trunk): * lib/rexml/document.rb (REXML::Document#write): require
matz 2008-12-11 10:20:23 +0900 (Thu, 11 Dec 2008) New Revision: 20620 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=20620 Log: * lib/rexml/document.rb (REXML::Document#write): require rexml/formatters/transitive if transitive flag is on. a patch from akira yamada in [ruby-dev:36230]. fix #553 * lib/rexml/element.rb (REXML::Element#write): ditto. * lib/rexml/formatters/transitive.rb (REXML::Formatters::Transitive#write_element): add hack for IE. [ruby-dev:36230] Modified files: trunk/ChangeLog trunk/lib/rexml/document.rb trunk/lib/rexml/element.rb trunk/lib/rexml/formatters/transitive.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 20619) +++ ChangeLog (revision 20620) @@ -1,3 +1,14 @@ +Thu Dec 11 10:18:35 2008 Yukihiro Matsumoto <matz@r...> + + * lib/rexml/document.rb (REXML::Document#write): require + rexml/formatters/transitive if transitive flag is on. a patch + from akira yamada in [ruby-dev:36230]. fix #553 + + * lib/rexml/element.rb (REXML::Element#write): ditto. + + * lib/rexml/formatters/transitive.rb (REXML::Formatters::Transitive#write_element): + add hack for IE. [ruby-dev:36230] + Thu Dec 11 02:37:22 2008 Yukihiro Matsumoto <matz@r...> * math.c (domain_check): should not raise EDOM exception for NaN Index: lib/rexml/document.rb =================================================================== --- lib/rexml/document.rb (revision 20619) +++ lib/rexml/document.rb (revision 20620) @@ -186,6 +186,7 @@ end formatter = if indent > -1 if transitive + require "rexml/formatters/transitive" REXML::Formatters::Transitive.new( indent, ie_hack ) else REXML::Formatters::Pretty.new( indent, ie_hack ) Index: lib/rexml/element.rb =================================================================== --- lib/rexml/element.rb (revision 20619) +++ lib/rexml/element.rb (revision 20620) @@ -691,6 +691,7 @@ Kernel.warn("#{self.class.name}.write is deprecated. See REXML::Formatters") formatter = if indent > -1 if transitive + require "rexml/formatters/transitive" REXML::Formatters::Transitive.new( indent, ie_hack ) else REXML::Formatters::Pretty.new( indent, ie_hack ) Index: lib/rexml/formatters/transitive.rb =================================================================== --- lib/rexml/formatters/transitive.rb (revision 20619) +++ lib/rexml/formatters/transitive.rb (revision 20620) @@ -12,9 +12,10 @@ # formatted. Since this formatter does not alter whitespace nodes, the # results of formatting already formatted XML will be odd. class Transitive < Default - def initialize( indentation=2 ) + def initialize( indentation=2, ie_hack=false ) @indentation = indentation @level = 0 + @ie_hack = ie_hack end protected @@ -29,6 +30,7 @@ output << "\n" output << ' '*@level if node.children.empty? + output << " " if @ie_hack output << "/" else output << ">" -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/