Patchwork D2824: hgweb: rewrite path generation for index entries

login
register
mail settings
Submitter phabricator
Date March 12, 2018, 9:38 p.m.
Message ID <82b78dd1c78fbcf82d21e654687a0355@localhost.localdomain>
Download mbox | patch
Permalink /patch/29398/
State Not Applicable
Headers show

Comments

phabricator - March 12, 2018, 9:38 p.m.
This revision was automatically updated to reflect the committed changes.
Closed by commit rHGe473a032f38a: hgweb: rewrite path generation for index entries (authored by indygreg, committed by ).

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D2824?vs=6890&id=6953

REVISION DETAIL
  https://phab.mercurial-scm.org/D2824

AFFECTED FILES
  mercurial/hgweb/hgwebdir_mod.py

CHANGE DETAILS




To: indygreg, #hg-reviewers, durin42
Cc: mercurial-devel

Patch

diff --git a/mercurial/hgweb/hgwebdir_mod.py b/mercurial/hgweb/hgwebdir_mod.py
--- a/mercurial/hgweb/hgwebdir_mod.py
+++ b/mercurial/hgweb/hgwebdir_mod.py
@@ -9,7 +9,6 @@ 
 from __future__ import absolute_import
 
 import os
-import re
 import time
 
 from ..i18n import _
@@ -161,11 +160,12 @@ 
                 except (IOError, error.RepoError):
                     pass
 
-        parts = [name]
-        parts.insert(0, '/' + subdir.rstrip('/'))
-        if wsgireq.env['SCRIPT_NAME']:
-            parts.insert(0, wsgireq.env['SCRIPT_NAME'])
-        url = re.sub(r'/+', '/', '/'.join(parts) + '/')
+        parts = [
+            wsgireq.req.apppath.strip('/'),
+            subdir.strip('/'),
+            name.strip('/'),
+        ]
+        url = '/' + '/'.join(p for p in parts if p) + '/'
 
         # show either a directory entry or a repository
         if directory: