--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -1732,7 +1732,9 @@ def recover(ui, repo):
This command tries to fix the repository status after an interrupted
operation. It should only be necessary when Mercurial suggests it.
"""
- repo.recover()
+ if repo.recover():
+ return repo.verify()
+ return False
def remove(ui, repo, pat, *pats, **opts):
"""remove the specified files on the next commit
--- a/mercurial/localrepo.py
+++ b/mercurial/localrepo.py
@@ -225,9 +225,11 @@ class localrepository:
lock = self.lock()
if os.path.exists(self.join("journal")):
self.ui.status(_("rolling back interrupted transaction\n"))
- return transaction.rollback(self.opener, self.join("journal"))
+ transaction.rollback(self.opener, self.join("journal"))
+ return True
else:
self.ui.warn(_("no interrupted transaction available\n"))
+ return False
def undo(self):
lock = self.lock()