From bfdb4375089cb16abd0a44e1a98194666986f491 Mon Sep 17 00:00:00 2001 From: Jamis Buck Date: Mon, 5 Sep 2005 09:44:22 +0000 Subject: Updated vendor copy of html-scanner to support better xml parsing git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2131 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- actionpack/lib/action_controller/vendor/html-scanner/html/document.rb | 4 ++-- actionpack/lib/action_controller/vendor/html-scanner/html/node.rb | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) (limited to 'actionpack/lib/action_controller') diff --git a/actionpack/lib/action_controller/vendor/html-scanner/html/document.rb b/actionpack/lib/action_controller/vendor/html-scanner/html/document.rb index c8e07b884c..9949afb6c9 100644 --- a/actionpack/lib/action_controller/vendor/html-scanner/html/document.rb +++ b/actionpack/lib/action_controller/vendor/html-scanner/html/document.rb @@ -11,7 +11,7 @@ module HTML #:nodoc: attr_reader :root # Create a new Document from the given text. - def initialize(text, strict=false) + def initialize(text, strict=false, xml=false) tokenizer = Tokenizer.new(text) @root = Node.new(nil) node_stack = [ @root ] @@ -38,7 +38,7 @@ ignoring attempt to close #{node_stack.last.name} with #{node.name} EOF strict ? raise(msg) : warn(msg) end - elsif !node.childless? && node.closing != :close + elsif !node.childless?(xml) && node.closing != :close node_stack.push node end end diff --git a/actionpack/lib/action_controller/vendor/html-scanner/html/node.rb b/actionpack/lib/action_controller/vendor/html-scanner/html/node.rb index 6d045b0367..f0f94d19cc 100644 --- a/actionpack/lib/action_controller/vendor/html-scanner/html/node.rb +++ b/actionpack/lib/action_controller/vendor/html-scanner/html/node.rb @@ -271,7 +271,8 @@ module HTML #:nodoc: end # Returns non-+nil+ if this tag can contain child nodes. - def childless? + def childless?(xml = false) + return false if xml && @closing.nil? !@closing.nil? || @name =~ /^(img|br|hr|link|meta|area|base|basefont| col|frame|input|isindex|param)$/ox -- cgit v1.2.3