[PATCH] hgweb: Ensure isdirectory is None for repositories, replacing any True value

Paul Boddie paul at boddie.org.uk
Wed Feb 26 17:25:47 CST 2014


# HG changeset patch
# User Paul Boddie <paul at boddie.org.uk>
# Date 1393457046 -3600
# Node ID 48bd57f415f66ce317cd81d64960ff58d0f9ced2
# Parent  aa021ece4506f5e962c8d87ab58ab594a0105ced
hgweb: Ensure isdirectory is None for repositories, replacing any True value

Until now, repositories did not provide any value for isdirectory in rows
produced for the index output, and thus isdirectory was generally evaluated as
None for each index entry representing a repository.

However, directories (visible when viewed with the descend and collapse
settings enabled) did provide a value of True and this value appeared to
persist in subsequent rows processed by the templater, causing isdirectory
tests in templates to produce incorrect results for index entries appearing
after directories.

This patch asserts the None value for repositories, thus erasing any such
persistent True values.

diff -r aa021ece4506 -r 48bd57f415f6 mercurial/hgweb/hgwebdir_mod.py
--- a/mercurial/hgweb/hgwebdir_mod.py	Thu Feb 20 00:46:13 2014 -0600
+++ b/mercurial/hgweb/hgwebdir_mod.py	Thu Feb 27 00:24:06 2014 +0100
@@ -365,7 +365,8 @@
                            description_sort=description.upper() or "unknown",
                            lastchange=d,
                            lastchange_sort=d[1]-d[0],
-                           archives=archivelist(u, "tip", url))
+                           archives=archivelist(u, "tip", url),
+                           isdirectory=None)
 
                 seenrepos.add(name)
                 yield row


More information about the Mercurial-devel mailing list