--- a/mercurial/hgweb/hgweb_mod.py Tue Jul 03 03:06:40 2007 -0300
+++ b/mercurial/hgweb/hgweb_mod.py Tue Jul 03 03:06:40 2007 -0300
@@ -404,7 +404,7 @@
parent=self.siblings(fctx.parents()),
child=self.siblings(fctx.children()),
rename=self.renamelink(fl, n),
- permissions=fctx.manifest().execf(f))
+ permissions=fctx.manifest().flags(f))
def fileannotate(self, fctx):
f = fctx.path()
@@ -440,7 +440,7 @@
rename=self.renamelink(fl, n),
parent=self.siblings(fctx.parents()),
child=self.siblings(fctx.children()),
- permissions=fctx.manifest().execf(f))
+ permissions=fctx.manifest().flags(f))
def manifest(self, ctx, path):
mf = ctx.manifest()
@@ -477,7 +477,7 @@
"parity": parity.next(),
"basename": f,
"size": ctx.filectx(full).size(),
- "permissions": mf.execf(full)}
+ "permissions": mf.flags(full)}
def dirlist(**map):
fl = files.keys()
--- a/mercurial/templater.py Tue Jul 03 03:06:40 2007 -0300
+++ b/mercurial/templater.py Tue Jul 03 03:06:40 2007 -0300
@@ -245,6 +245,13 @@
yield '\n'
return "".join(indenter())
+def permissions(flags):
+ if "l" in flags:
+ return "lrwxrwxrwx"
+ if "x" in flags:
+ return "-rwxr-xr-x"
+ return "-rw-r--r--"
+
common_filters = {
"addbreaks": nl2br,
"basename": os.path.basename,
@@ -260,7 +267,7 @@
"hgdate": hgdate,
"isodate": isodate,
"obfuscate": obfuscate,
- "permissions": lambda x: x and "-rwxr-xr-x" or "-rw-r--r--",
+ "permissions": permissions,
"person": person,
"rfc822date": lambda x: util.datestr(x, "%a, %d %b %Y %H:%M:%S"),
"short": lambda x: x[:12],