From 8d4fa5fe9edeb9ec7ae811407c9738d402a6dee0 Mon Sep 17 00:00:00 2001 From: ser Date: Wed, 7 Apr 2004 14:14:46 +0000 Subject: REXML CHANGES The previous bug fixing the behavior of Element::text= introduced a bug that occurred when calling (el.text = nil) to delete the first text node. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@6121 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/rexml/element.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lib/rexml/element.rb') diff --git a/lib/rexml/element.rb b/lib/rexml/element.rb index d616d0311..aba57d708 100644 --- a/lib/rexml/element.rb +++ b/lib/rexml/element.rb @@ -429,7 +429,7 @@ module REXML element = @elements[ path ] rv = element.get_text unless element.nil? else - rv = find { |node| node.kind_of? Text } + rv = @children.find { |node| node.kind_of? Text } end return rv end @@ -457,8 +457,8 @@ module REXML def text=( text ) if text.kind_of? String text = Text.new( text, whitespace(), nil, raw() ) - else - text = Text.new( text.to_s, whitespace(), nil, raw() ) unless text.kind_of? Text + elsif text and !text.kind_of? Text + text = Text.new( text.to_s, whitespace(), nil, raw() ) end old_text = get_text -- cgit