# HG changeset patch # User Martin von Zweigbergk # Date 1610087899 28800 # Node ID 8db5fa212ab0d819bc523088c9364bd85021a9f7 # Parent 0a69f9e640ec73ed95f862ea53537862a09b3e52 shelve: use listshelves() in cleanup function The point of this patch is to make it so all the callers of `shelvedfile.movetobackup()` look the same, so I can move it over to the new `Shelf` class next. Differential Revision: https://phab.mercurial-scm.org/D9710 diff -r 0a69f9e640ec -r 8db5fa212ab0 mercurial/shelve.py --- a/mercurial/shelve.py Thu Jan 07 16:08:30 2021 -0800 +++ b/mercurial/shelve.py Thu Jan 07 22:38:19 2021 -0800 @@ -602,10 +602,11 @@ """subcommand that deletes all shelves""" with repo.wlock(): - for (name, _type) in repo.vfs.readdir(shelvedir): - suffix = name.rsplit(b'.', 1)[-1] - if suffix in shelvefileextensions: - shelvedfile(repo, name).movetobackup() + for _mtime, name in listshelves(repo): + for suffix in shelvefileextensions: + shfile = shelvedfile(repo, name, suffix) + if shfile.exists(): + shfile.movetobackup() cleanupoldbackups(repo)