diff -r af3e67354beb -r a4413624d014 mercurial/commands.py --- a/mercurial/commands.py Sun Feb 26 17:12:15 2012 +0100 +++ b/mercurial/commands.py Tue Feb 28 21:17:53 2012 -0600 @@ -5720,7 +5720,7 @@ # with no argument, we also move the current bookmark, if any movemarkfrom = None - if node is None or node == '': + if rev is None or node == '': movemarkfrom = repo['.'].node() # if we defined a bookmark, we have to remember the original bookmark name @@ -5754,6 +5754,8 @@ ui.status(_("updating bookmark %s\n") % repo._bookmarkcurrent) elif brev in repo._bookmarks: bookmarks.setcurrent(repo, brev) + elif brev: + bookmarks.unsetcurrent(repo) return ret