We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 790ad5c commit 6422fa3Copy full SHA for 6422fa3
1 file changed
lib/rexml/element.rb
@@ -441,9 +441,14 @@ def root_node
441
# Related: #root_node, #document.
442
#
443
def root
444
- return elements[1] if self.kind_of? Document
445
- return self if parent.kind_of? Document or parent.nil?
446
- return parent.root
+ target = self
+ while target
+ return target.elements[1] if target.kind_of? Document
447
+ parent = target.parent
448
+ return target if parent.kind_of? Document or parent.nil?
449
+ target = parent
450
+ end
451
+ nil
452
end
453
454
# :call-seq:
0 commit comments