diff --git a/ChangeLog b/ChangeLog index 95857fac44..8c5c37ac21 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Tue Feb 9 21:27:38 2010 Yusuke Endoh + + * lib/rexml/text.rb (REXML::Text#initialize): REXML::Text.new checks + raw text for illegal characters without entity check, for the sake + of 1.8 compatibility. This had caused rubyspec error. + Mon Feb 8 23:49:24 2010 Yukihiro Matsumoto * io.c (rb_io_getline_fast): wrong calculation of new position diff --git a/lib/rexml/text.rb b/lib/rexml/text.rb index 5cef876c52..0f15f00c31 100644 --- a/lib/rexml/text.rb +++ b/lib/rexml/text.rb @@ -117,7 +117,7 @@ module REXML @string.gsub!( /\r\n?/, "\n" ) - Text.check(@string, illegal, doctype) if @raw and @parent + Text.check(@string, illegal, doctype) if @raw end def parent= parent @@ -160,7 +160,7 @@ module REXML else raise "Illegal character '#{$1}' in raw string \"#{string}\"" end - elsif $3 and !SUBSTITUTES.include?($1) + elsif @parent and $3 and !SUBSTITUTES.include?($1) if !doctype or !doctype.entities.has_key?($3) raise "Undeclared entity '#{$1}' in raw string \"#{string}\"" end