diff options
Diffstat (limited to 'lib/gitlab/gfm/reference_rewriter.rb')
-rw-r--r-- | lib/gitlab/gfm/reference_rewriter.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/gitlab/gfm/reference_rewriter.rb b/lib/gitlab/gfm/reference_rewriter.rb index edc96a5e83b..a1c6ee7bd69 100644 --- a/lib/gitlab/gfm/reference_rewriter.rb +++ b/lib/gitlab/gfm/reference_rewriter.rb @@ -49,12 +49,14 @@ module Gitlab def unfold_reference(reference, match, target_project) before = @text[0...match.begin(0)] after = @text[match.end(0)..-1] - referable = find_referable(reference) + referable = find_referable(reference) return reference unless referable + cross_reference = referable.to_reference(target_project) - new_text = before + cross_reference + after + return reference if reference == cross_reference + new_text = before + cross_reference + after substitution_valid?(new_text) ? cross_reference : reference end |