wikis history page links to error page
The bug is
The page /wikis/home/history have many links to history.
But they all link to newest one --/wikis/home.
3143edfe
I think the bug comes from commitThe commit rewrite function: namespace_project_wiki_path
and the new function ignore the last args (which contains commit_sha)
now the bug is ,
# /gitlab/app/helpers/projects_helper.rb
# ~~~~ here we call new function but get wrong path, because "url_params" or "version_id" is ignored
def project_wiki_path_with_version(proj, page, version, is_newest)
url_params = is_newest ? {} : { version_id: version }
namespace_project_wiki_path(proj.namespace, proj, page, url_params)
end
I try to fix it in my local gitlab like so
# /gitlab/app/helpers/wiki_helper.rb
module WikiHelper
# Rails v4.1.9+ escapes all model IDs, converting slashes into %2F. The
# only way around this is to implement our own path generators.
def namespace_project_wiki_path(namespace, project, wiki_page, *args)
slug =
case wiki_page
when Symbol
wiki_page
when String
wiki_page
else
wiki_page.slug
end
- namespace_project_path(namespace, project) + "/wikis/#{slug}"
+ version_id = (args.size==1 && args[0][:version_id])? "?version_id=#{args[0][:version_id]}": ""
+ namespace_project_path(namespace, project) + "/wikis/#{slug}" + version_id