diff options
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | lib/rexml/entity.rb | 2 | ||||
-rw-r--r-- | test/rexml/test_document.rb | 3 | ||||
-rw-r--r-- | version.h | 2 |
4 files changed, 13 insertions, 3 deletions
@@ -1,3 +1,12 @@ +Thu Feb 5 09:02:18 2009 Shugo Maeda <shugo@ruby-lang.org> + + * lib/rexml/entity.rb (unnormalized): do not call + document.record_entity_expansion if document is nil. + see <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=502535>. + Thanks, Naohisa Goto. backported from trunk. + + * test/rexml/test_document.rb: ditto. + Thu Feb 5 08:54:25 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> * array.c (rb_ary_join): do not repeat self in a recursive array. diff --git a/lib/rexml/entity.rb b/lib/rexml/entity.rb index 94e6d3ff1b..7e9b4e5e1a 100644 --- a/lib/rexml/entity.rb +++ b/lib/rexml/entity.rb @@ -73,7 +73,7 @@ module REXML # all entities -- both %ent; and &ent; entities. This differs from # +value()+ in that +value+ only replaces %ent; entities. def unnormalized - document.record_entity_expansion + document.record_entity_expansion unless document.nil? v = value() return nil if v.nil? @unnormalized = Text::unnormalize(v, parent) diff --git a/test/rexml/test_document.rb b/test/rexml/test_document.rb index 5207b42d72..0261e80b74 100644 --- a/test/rexml/test_document.rb +++ b/test/rexml/test_document.rb @@ -35,6 +35,7 @@ EOF <member> &a; &a2; +< </member> EOF @@ -53,7 +54,7 @@ EOF REXML::Document.entity_expansion_limit = 4 doc = REXML::Document.new(XML_WITH_4_ENTITY_EXPANSION) - assert_equal("\na\na a\n", doc.root.children.first.value) + assert_equal("\na\na a\n<\n", doc.root.children.first.value) REXML::Document.entity_expansion_limit = 3 doc = REXML::Document.new(XML_WITH_4_ENTITY_EXPANSION) assert_raise(RuntimeError) do @@ -2,7 +2,7 @@ #define RUBY_RELEASE_DATE "2009-02-05" #define RUBY_VERSION_CODE 186 #define RUBY_RELEASE_CODE 20090205 -#define RUBY_PATCHLEVEL 320 +#define RUBY_PATCHLEVEL 321 #define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MINOR 8 |