bookmark: use `list_paths` to access path definition
The content of the `[paths]` config section is receiving transformation that
make it hard to recognise whats the actual name, and the next changeset will
make it worse. So we use the official API for this instead.
Differential Revision: https://phab.mercurial-scm.org/D10448
--- a/mercurial/bookmarks.py Thu Apr 15 16:58:20 2021 +0200
+++ b/mercurial/bookmarks.py Fri Apr 16 02:14:21 2021 +0200
@@ -600,11 +600,12 @@
# if an @pathalias already exists, we overwrite (update) it
if path.startswith(b"file:"):
path = urlutil.url(path).path
- for p, u in ui.configitems(b"paths"):
- if u.startswith(b"file:"):
- u = urlutil.url(u).path
- if path == u:
- return b'%s@%s' % (b, p)
+ for name, p in urlutil.list_paths(ui):
+ loc = p.rawloc
+ if loc.startswith(b"file:"):
+ loc = urlutil.url(loc).path
+ if path == loc:
+ return b'%s@%s' % (b, name)
# assign a unique "@number" suffix newly
for x in range(1, 100):