Hi, In <83173408.0405060527.109872e6 / posting.google.com> "Re: REXML bug?" on Thu, 6 May 2004 22:29:09 +0900, ser / germane-software.com (Sean Russell) wrote: > Yes, this was a bug in Doctype; it should be fixed in the current > release of REXML, as well as in CVS; in fact, it has been fixed for a > couple of months -- I believe ti got fixed in version 3.0.2, so I'm It seems to be not fixed. REXML::Docutype#initialize doesn't call `super' when `first' is REXML::Source. I attach a patch for the bug, but I don't like this solution. :( I hope SER supply more flexible solution. -- kou
Index: lib/rexml/doctype.rb =================================================================== RCS file: /src/ruby/lib/rexml/doctype.rb,v retrieving revision 1.5 diff -u -p -b -r1.5 doctype.rb --- lib/rexml/doctype.rb 28 Mar 2004 22:36:15 -0000 1.5 +++ lib/rexml/doctype.rb 7 May 2004 13:23:53 -0000 @@ -54,6 +54,15 @@ module REXML @external_id = first[1] @long_name = first[2] @uri = first[3] + elsif first.kind_of? Source + super() + parser = Parsers::BaseParser.new( first ) + event = parser.pull + if event[0] == :start_doctype + @name, @external_id, @long_name, @uri, = event[1..-1] + end + else + super() end end