bookmarks: merge current tracking on update into core
authorMatt Mackall <mpm@selenic.com>
Thu, 10 Feb 2011 13:46:28 -0600
changeset 13367 cef73cd9c268
parent 13366 c756e9166417
child 13368 d4ab9486e514
bookmarks: merge current tracking on update into core
hgext/bookmarks.py
mercurial/commands.py
--- a/hgext/bookmarks.py	Thu Feb 10 13:46:28 2011 -0600
+++ b/hgext/bookmarks.py	Thu Feb 10 13:46:28 2011 -0600
@@ -196,9 +196,6 @@
     return result
 
 def uisetup(ui):
-    if ui.configbool('bookmarks', 'track.current'):
-        extensions.wrapcommand(commands.table, 'update', updatecurbookmark)
-
     entry = extensions.wrapcommand(commands.table, 'pull', pull)
     entry[1].append(('B', 'bookmark', [],
                      _("bookmark to import"),
@@ -208,19 +205,6 @@
                      _("bookmark to export"),
                      _('BOOKMARK')))
 
-def updatecurbookmark(orig, ui, repo, *args, **opts):
-    '''Set the current bookmark
-
-    If the user updates to a bookmark we update the .hg/bookmarks.current
-    file.
-    '''
-    res = orig(ui, repo, *args, **opts)
-    rev = opts['rev']
-    if not rev and len(args) > 0:
-        rev = args[0]
-    bookmarks.setcurrent(repo, rev)
-    return res
-
 cmdtable = {
     "bookmarks":
         (bookmark,
--- a/mercurial/commands.py	Thu Feb 10 13:46:28 2011 -0600
+++ b/mercurial/commands.py	Thu Feb 10 13:46:28 2011 -0600
@@ -3893,9 +3893,14 @@
         rev = cmdutil.finddate(ui, repo, date)
 
     if clean or check:
-        return hg.clean(repo, rev)
+        ret = hg.clean(repo, rev)
     else:
-        return hg.update(repo, rev)
+        ret = hg.update(repo, rev)
+
+    if repo.ui.configbool('bookmarks', 'track.current'):
+        bookmarks.setcurrent(repo, rev)
+
+    return ret
 
 def verify(ui, repo):
     """verify the integrity of the repository