[PATCH 02 of 10 V10] bookmarks: use listbinbookmarks() in listbookmarks()

Stanislau Hlebik stash at fb.com
Sun Nov 20 07:13:55 EST 2016


# HG changeset patch
# User Stanislau Hlebik <stash at fb.com>
# Date 1479373181 28800
#      Thu Nov 17 00:59:41 2016 -0800
# Node ID 54b24eb2eac7c181f9fd15423fd05218a6a11186
# Parent  a3159f73e59868f8ae0993cc91277142aaa10536
bookmarks: use listbinbookmarks() in listbookmarks()

diff --git a/mercurial/bookmarks.py b/mercurial/bookmarks.py
--- a/mercurial/bookmarks.py
+++ b/mercurial/bookmarks.py
@@ -296,16 +296,9 @@
             yield k, v
 
 def listbookmarks(repo):
-    # We may try to list bookmarks on a repo type that does not
-    # support it (e.g., statichttprepository).
-    marks = getattr(repo, '_bookmarks', {})
-
     d = {}
-    hasnode = repo.changelog.hasnode
-    for k, v in marks.iteritems():
-        # don't expose local divergent bookmarks
-        if hasnode(v) and ('@' not in k or k.endswith('@')):
-            d[k] = hex(v)
+    for book, node in listbinbookmarks(repo):
+        d[book] = hex(node)
     return d
 
 def pushbookmark(repo, key, old, new):


More information about the Mercurial-devel mailing list