mercurial/localrepo.py
changeset 17009 0c18aed2fcca
parent 16941 a1eb17bed550
child 17012 ea97744c4801
--- a/mercurial/localrepo.py	Fri Jun 08 07:59:37 2012 -0700
+++ b/mercurial/localrepo.py	Fri Jun 08 08:39:44 2012 -0700
@@ -590,8 +590,10 @@
                 if latest not in bheads:
                     continue
                 minbhnode = self[bheads[0]].node()
-                reachable = self.changelog.reachable(latest, minbhnode)
-                reachable.remove(latest)
+                cl = self.changelog
+                ancestors = cl.ancestors([cl.rev(latest)],
+                                          cl.rev(minbhnode))
+                reachable = [cl.node(rev) for rev in ancestors]
                 if reachable:
                     bheads = [b for b in bheads if b not in reachable]
             partial[branch] = bheads