diff --git a/lib/gitlab/diff/highlight.rb b/lib/gitlab/diff/highlight.rb
index 40a54ede2bb62a73ea1d89ca351167193f37d7c7..c780ea2177591ca9f3ada0342b30735ac5a7c0b4 100644
--- a/lib/gitlab/diff/highlight.rb
+++ b/lib/gitlab/diff/highlight.rb
@@ -25,7 +25,12 @@ module Gitlab
 
       def update_diff_lines
         @highlighted_code.lines.each_with_index do |line, i|
-          @diff_lines[i].text = "#{@diff_line_prefixes[i]}#{line}"
+          diff_line = @diff_lines[i]
+
+          # ignore highlighting for "match" lines
+          next if diff_line.type == 'match'
+
+          diff_line.text = "#{@diff_line_prefixes[i]}#{line}"
         end
 
         @diff_lines
diff --git a/spec/lib/gitlab/diff/highlight_spec.rb b/spec/lib/gitlab/diff/highlight_spec.rb
index 80083c15cff96cb3225401e12b58ffe267a12e6f..54621f773d76d2e5c34dd44c13658ae3e648d31e 100644
--- a/spec/lib/gitlab/diff/highlight_spec.rb
+++ b/spec/lib/gitlab/diff/highlight_spec.rb
@@ -24,5 +24,10 @@ describe Gitlab::Diff::Highlight, lib: true do
     it 'should keep the inline diff markup' do
       expect(diff_lines[5].text).to match(Regexp.new(Regexp.escape('<span class="idiff">RuntimeError, </span>')))
     end
+
+    it 'should not modify "match" lines' do
+      expect(diff_lines[0].text).to eq('@@ -6,12 +6,18 @@ module Popen')
+      expect(diff_lines[22].text).to eq('@@ -19,6 +25,7 @@ module Popen')
+    end
   end
 end