diff -r f332a64fef51 -r e3f5cef11d6a mercurial/hgweb/webcommands.py --- a/mercurial/hgweb/webcommands.py Mon Jan 14 16:55:48 2013 +0100 +++ b/mercurial/hgweb/webcommands.py Wed Jan 16 13:18:22 2013 +0100 @@ -242,7 +242,7 @@ pos = end - 1 parity = paritygen(web.stripecount, offset=start - end) - changenav = webutil.revnav(web.repo.changectx).gen(pos, revcount, count) + changenav = webutil.revnav(web.repo).gen(pos, revcount, count) return tmpl(shortlog and 'shortlog' or 'changelog', changenav=changenav, node=ctx.hex(), rev=pos, changesets=count, @@ -771,8 +771,8 @@ for e in reversed(l): yield e - nodefunc = lambda x: fctx.filectx(fileid=x) - nav = webutil.filerevnav(nodefunc).gen(end - 1, revcount, count) + revnav = webutil.filerevnav(web.repo, fctx.path()) + nav = revnav.gen(end - 1, revcount, count) return tmpl("filelog", file=f, node=fctx.hex(), nav=nav, entries=lambda **x: entries(latestonly=False, **x), latestentry=lambda **x: entries(latestonly=True, **x), @@ -851,7 +851,7 @@ uprev = min(max(0, count - 1), rev + revcount) downrev = max(0, rev - revcount) - changenav = webutil.revnav(web.repo.changectx).gen(pos, revcount, count) + changenav = webutil.revnav(web.repo).gen(pos, revcount, count) dag = graphmod.dagwalker(web.repo, range(start, end)[::-1]) tree = list(graphmod.colored(dag, web.repo))