summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAhmad Sherif <me@ahmadsherif.com>2017-10-26 18:40:32 +0200
committerAhmad Sherif <me@ahmadsherif.com>2017-10-26 18:40:32 +0200
commitbea434a85affa197981389d09c0822a9a79c8041 (patch)
tree482249606d2401a9e7a294ceec487a8b3b46bd97
parentb3ba3996e0bd329eaa574ff53c69673efaca6eef (diff)
downloadgitlab-ce-fix/avoid-using-rugged-in-wiki-preview-slug.tar.gz
Avoid using Rugged in Gitlab::Git::Wiki#preview_slugfix/avoid-using-rugged-in-wiki-preview-slug
-rw-r--r--lib/gitlab/git/wiki.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/gitlab/git/wiki.rb b/lib/gitlab/git/wiki.rb
index e7b2f52a552..b4c886db729 100644
--- a/lib/gitlab/git/wiki.rb
+++ b/lib/gitlab/git/wiki.rb
@@ -80,7 +80,15 @@ module Gitlab
end
def preview_slug(title, format)
- gollum_wiki.preview_page(title, '', format).url_path
+ # Adapted from gollum gem (Gollum::Wiki#preview_page) to avoid
+ # using Rugged through a Gollum::Wiki instance
+ page_class = Gollum::Page
+ page = page_class.new(nil)
+ ext = page_class.format_to_ext(format.to_sym)
+ name = page_class.cname(title) + '.' + ext
+ blob = OpenStruct.new(name: name)
+ page.populate(blob)
+ page.url_path
end
private