summaryrefslogtreecommitdiff
path: root/lib/rss/syndication.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rss/syndication.rb')
-rw-r--r--lib/rss/syndication.rb6
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