Mercurial > hg
changeset 7288:9c399c53469d
Allow per-file shadowing of static directory in templatepath
author | Brendan Cully <brendan@kublai.com> |
---|---|
date | Tue, 28 Oct 2008 22:24:17 -0700 |
parents | 6e9fe4ff9c54 |
children | ddab62b2fec4 |
files | mercurial/hgweb/common.py mercurial/hgweb/webcommands.py |
diffstat | 2 files changed, 8 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/hgweb/common.py Tue Oct 28 21:58:30 2008 -0700 +++ b/mercurial/hgweb/common.py Tue Oct 28 22:24:17 2008 -0700 @@ -53,12 +53,17 @@ """ parts = fname.split('/') - path = directory for part in parts: if (part in ('', os.curdir, os.pardir) or os.sep in part or os.altsep is not None and os.altsep in part): return "" - path = os.path.join(path, part) + fpath = os.path.join(*parts) + if isinstance(directory, str): + directory = [directory] + for d in directory: + path = os.path.join(d, fpath) + if os.path.exists(path): + break try: os.stat(path) ct = mimetypes.guess_type(path)[0] or "text/plain"
--- a/mercurial/hgweb/webcommands.py Tue Oct 28 21:58:30 2008 -0700 +++ b/mercurial/hgweb/webcommands.py Tue Oct 28 22:24:17 2008 -0700 @@ -583,10 +583,7 @@ tp = web.templatepath if isinstance(tp, str): tp = [tp] - for path in tp: - static = os.path.join(path, 'static') - if os.path.isdir(static): - break + static = [os.path.join(p, 'static') for p in tp] return [staticfile(static, fname, req)] def graph(web, req, tmpl):