summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYorick Peterse <yorickpeterse@gmail.com>2015-12-30 17:16:02 +0100
committerYorick Peterse <yorickpeterse@gmail.com>2015-12-31 15:46:47 +0100
commit3077cb52d904154b98ee3e9aced5b3aadae86941 (patch)
tree7a0b006af8d37d283a9ccd5284fd7907ca0cfce7
parentab08321be8405eab07929bb3df8bd2dcc14dc063 (diff)
downloadgitlab-ce-3077cb52d904154b98ee3e9aced5b3aadae86941.tar.gz
Use XPath for searching link nodes
This is a tad faster than letting Nokogiri figure out whether it should evaluate the query as CSS or XPath and then actually evaluating it.
-rw-r--r--lib/banzai/filter/reference_filter.rb4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/banzai/filter/reference_filter.rb b/lib/banzai/filter/reference_filter.rb
index 8ca05ace88c..7198a8b03e2 100644
--- a/lib/banzai/filter/reference_filter.rb
+++ b/lib/banzai/filter/reference_filter.rb
@@ -124,7 +124,7 @@ module Banzai
def replace_link_nodes_with_text(pattern)
return doc if project.nil?
- doc.search('a').each do |node|
+ doc.xpath('descendant-or-self::a').each do |node|
klass = node.attr('class')
next if klass && klass.include?('gfm')
@@ -162,7 +162,7 @@ module Banzai
def replace_link_nodes_with_href(pattern)
return doc if project.nil?
- doc.search('a').each do |node|
+ doc.xpath('descendant-or-self::a').each do |node|
klass = node.attr('class')
next if klass && klass.include?('gfm')