Commit 94919c7e authored by Douwe Maan's avatar Douwe Maan

Ignore references in blockquotes.

parent fe78984f
...@@ -25,12 +25,18 @@ module Gitlab ...@@ -25,12 +25,18 @@ module Gitlab
ERB::Util.html_escape_once(html) ERB::Util.html_escape_once(html)
end end
def ignore_parents
@ignore_parents ||= begin
# Don't look for references in text nodes that are children of these # Don't look for references in text nodes that are children of these
# elements. # elements.
IGNORE_PARENTS = %w(pre code a style).to_set parents = %w(pre code a style)
parents << 'blockquote' if context[:ignore_blockquotes]
parents.to_set
end
end
def ignored_ancestry?(node) def ignored_ancestry?(node)
has_ancestor?(node, IGNORE_PARENTS) has_ancestor?(node, ignore_parents)
end end
def project def project
......
...@@ -48,7 +48,8 @@ module Gitlab ...@@ -48,7 +48,8 @@ module Gitlab
project: project, project: project,
current_user: current_user, current_user: current_user,
# We don't actually care about the links generated # We don't actually care about the links generated
only_path: true only_path: true,
ignore_blockquotes: true
} }
pipeline = HTML::Pipeline.new([filter], context) pipeline = HTML::Pipeline.new([filter], context)
......
...@@ -32,6 +32,10 @@ describe Gitlab::ReferenceExtractor do ...@@ -32,6 +32,10 @@ describe Gitlab::ReferenceExtractor do
``` ```
@bar @bar
``` ```
Quote:
> @offteam
}) })
expect(subject.users).to eq([]) expect(subject.users).to eq([])
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment