diff options
Diffstat (limited to 'lib/rss')
-rw-r--r-- | lib/rss/parser.rb | 9 | ||||
-rw-r--r-- | lib/rss/rss.rb | 2 |
2 files changed, 4 insertions, 7 deletions
diff --git a/lib/rss/parser.rb b/lib/rss/parser.rb index b7a76397b8..bf3b0b5d08 100644 --- a/lib/rss/parser.rb +++ b/lib/rss/parser.rb @@ -365,10 +365,10 @@ module RSS def start_else_element(local, prefix, attrs, ns) class_name = self.class.class_name(_ns(ns, prefix), local) current_class = @last_element.class - next_class = nil - begin + if current_class.const_defined?(class_name) next_class = current_class.const_get(class_name) - rescue NameError + start_have_something_element(local, prefix, attrs, ns, next_class) + else if !@do_validate or @ignore_unknown_element @proc_stack.push(nil) else @@ -379,9 +379,6 @@ module RSS raise NotExpectedTagError.new(local, _ns(ns, prefix), parent) end end - if next_class - start_have_something_element(local, prefix, attrs, ns, next_class) - end end NAMESPLIT = /^(?:([\w:][-\w\d.]*):)?([\w:][-\w\d.]*)/ diff --git a/lib/rss/rss.rb b/lib/rss/rss.rb index fb777b1d53..db507f78c8 100644 --- a/lib/rss/rss.rb +++ b/lib/rss/rss.rb @@ -53,7 +53,7 @@ require "rss/xml-stylesheet" module RSS - VERSION = "0.1.8" + VERSION = "0.1.9" URI = "http://purl.org/rss/1.0/" |