diff options
Diffstat (limited to 'lib/rss/syndication.rb')
-rw-r--r-- | lib/rss/syndication.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/rss/syndication.rb b/lib/rss/syndication.rb index 8791ec24fc..fc93d03832 100644 --- a/lib/rss/syndication.rb +++ b/lib/rss/syndication.rb @@ -38,7 +38,7 @@ module RSS EOC end - def sy_validate(tags) + def sy_validate(ignore_unknown_element, tags, uri) counter = {} ELEMENTS.each do |name| counter[name] = 0 @@ -46,7 +46,9 @@ module RSS tags.each do |tag| key = "#{SY_PREFIX}_#{tag}" - raise UnknownTagError.new(tag, SY_URI) unless counter.has_key?(key) + if ignore_unknown_element and !counter.has_key?(key) + raise UnknownTagError.new(tag, SY_URI) + end counter[key] += 1 raise TooMuchTagError.new(tag, tag_name) if counter[key] > 1 end |