mercurial/obsolete.py
changeset 18271 67872e939945
parent 18101 a464deecc9dd
child 18275 9818f22785b7
--- a/mercurial/obsolete.py	Mon Dec 24 12:00:08 2012 +0100
+++ b/mercurial/obsolete.py	Fri Jan 04 03:14:54 2013 +0100
@@ -649,12 +649,13 @@
 def _computeobsoleteset(repo):
     """the set of obsolete revisions"""
     obs = set()
-    nm = repo.changelog.nodemap
+    getrev = repo.changelog.nodemap.get
+    getphase = repo._phasecache.phase
     for node in repo.obsstore.successors:
-        rev = nm.get(node)
-        if rev is not None:
+        rev = getrev(node)
+        if rev is not None and getphase(repo, rev):
             obs.add(rev)
-    return set(repo.revs('%ld - public()', obs))
+    return obs
 
 @cachefor('unstable')
 def _computeunstableset(repo):