diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -846,6 +846,12 @@ def bookmark(ui, repo, mark=None, rev=No raise util.Abort(_("bookmark name required")) if len(marks) == 0: ui.status(_("no bookmarks set\n")) + if inactive: + if not repo._bookmarkcurrent: + ui.status(_("no active bookmark\n")) + else: + bookmarks.setcurrent(repo, None) + return else: for bmark, n in sorted(marks.iteritems()): current = repo._bookmarkcurrent diff --git a/tests/test-bookmarks-current.t b/tests/test-bookmarks-current.t --- a/tests/test-bookmarks-current.t +++ b/tests/test-bookmarks-current.t @@ -115,6 +115,13 @@ deactivate current bookmark using -i Z 0:719295282060 $ hg up -q Y + $ hg bookmark -i + $ hg bookmarks + Y 0:719295282060 + Z 0:719295282060 + $ hg bookmark -i + no active bookmark + $ hg up -q Y $ hg bookmarks * Y 0:719295282060 Z 0:719295282060