[PATCH 5 of 7] discovery: make revlogdag work on filtered repo

pierre-yves.david at ens-lyon.org pierre-yves.david at ens-lyon.org
Sun Nov 17 14:31:44 CST 2013


# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at ens-lyon.org>
# Date 1384576035 18000
#      Fri Nov 15 23:27:15 2013 -0500
# Node ID 4dd2da14dc9854f8f75ef2ac20f1d110d8fdff02
# Parent  82c588b045118f0f96e08480e405089822d0348f
discovery: make revlogdag work on filtered repo

The revlogdag class is a core part of discovery. We need its initialisation to
exclude revision filtered out.

diff --git a/mercurial/dagutil.py b/mercurial/dagutil.py
--- a/mercurial/dagutil.py
+++ b/mercurial/dagutil.py
@@ -147,11 +147,11 @@ class revlogbaseddag(basedag):
 
 class revlogdag(revlogbaseddag):
     '''dag interface to a revlog'''
 
     def __init__(self, revlog):
-        revlogbaseddag.__init__(self, revlog, set(xrange(len(revlog))))
+        revlogbaseddag.__init__(self, revlog, set(revlog))
 
     def _getheads(self):
         return [r for r in self._revlog.headrevs() if r != nullrev]
 
     def parents(self, ix):


More information about the Mercurial-devel mailing list