Patchwork D7334: index: use `index.has_node` in `obsutil.foreground`

login
register
mail settings
Submitter phabricator
Date Nov. 8, 2019, 4:25 p.m.
Message ID <differential-rev-PHID-DREV-llkjb4hhm4v6u2c2dex7-req@mercurial-scm.org>
Download mbox | patch
Permalink /patch/42939/
State Superseded
Headers show

Comments

phabricator - Nov. 8, 2019, 4:25 p.m.
marmoute created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D7334

AFFECTED FILES
  mercurial/obsutil.py

CHANGE DETAILS




To: marmoute, #hg-reviewers
Cc: mercurial-devel

Patch

diff --git a/mercurial/obsutil.py b/mercurial/obsutil.py
--- a/mercurial/obsutil.py
+++ b/mercurial/obsutil.py
@@ -328,7 +328,7 @@ 
     if repo.obsstore:
         # We only need this complicated logic if there is obsolescence
         # XXX will probably deserve an optimised revset.
-        nm = repo.changelog.nodemap
+        has_node = repo.changelog.index.has_node
         plen = -1
         # compute the whole set of successors or descendants
         while len(foreground) != plen:
@@ -336,7 +336,7 @@ 
             succs = set(c.node() for c in foreground)
             mutable = [c.node() for c in foreground if c.mutable()]
             succs.update(allsuccessors(repo.obsstore, mutable))
-            known = (n for n in succs if n in nm)
+            known = (n for n in succs if has_node(n))
             foreground = set(repo.set(b'%ln::', known))
     return set(c.node() for c in foreground)