bookmarks: fix bug that activated a bookmark even with -r passed stable 2.6
authorSean Farley <sean.michael.farley@gmail.com>
Wed, 01 May 2013 15:24:21 -0500
branchstable
changeset 19112 23f785b38af3
parent 19111 6439d78e14fb
child 19113 fc2f8b8f2504
bookmarks: fix bug that activated a bookmark even with -r passed If the current revision was the target revision of -r, then the bookmark would be active. Test cases have been updated accordingly.
mercurial/commands.py
tests/test-bookmarks-current.t
tests/test-bookmarks-rebase.t
tests/test-bookmarks.t
--- a/mercurial/commands.py	Tue Apr 30 21:12:49 2013 -0500
+++ b/mercurial/commands.py	Wed May 01 15:24:21 2013 -0500
@@ -880,7 +880,7 @@
             tgt = scmutil.revsingle(repo, rev).node()
         checkconflict(repo, mark, force, tgt)
         marks[mark] = tgt
-        if not inactive and cur == marks[mark]:
+        if not inactive and cur == marks[mark] and not rev:
             bookmarks.setcurrent(repo, mark)
         elif cur != tgt and mark == repo._bookmarkcurrent:
             bookmarks.setcurrent(repo, None)
--- a/tests/test-bookmarks-current.t	Tue Apr 30 21:12:49 2013 -0500
+++ b/tests/test-bookmarks-current.t	Wed May 01 15:24:21 2013 -0500
@@ -91,14 +91,19 @@
   $ hg update tip
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
-set bookmark Y using -r .
+set bookmark Y using -r . but make sure that the active
+bookmark is not activated
 
   $ hg bookmark -r . Y
 
-list bookmarks
+list bookmarks, Y should not be active
 
   $ hg bookmark
-   * Y                         0:719295282060
+     Y                         0:719295282060
+
+now, activate Y
+
+  $ hg up -q Y
 
 set bookmark Z using -i
 
--- a/tests/test-bookmarks-rebase.t	Tue Apr 30 21:12:49 2013 -0500
+++ b/tests/test-bookmarks-rebase.t	Wed May 01 15:24:21 2013 -0500
@@ -26,6 +26,7 @@
 
   $ hg bookmark -r 1 one
   $ hg bookmark -r 3 two
+  $ hg up -q two
 
 bookmark list
 
--- a/tests/test-bookmarks.t	Tue Apr 30 21:12:49 2013 -0500
+++ b/tests/test-bookmarks.t	Wed May 01 15:24:21 2013 -0500
@@ -157,6 +157,7 @@
 bookmarks from a revset
   $ hg bookmark -r '.^1' REVSET
   $ hg bookmark -r ':tip' TIP
+  $ hg up -q TIP
   $ hg bookmarks
      REVSET                    0:f7b1eb17ad24
    * TIP                       2:db815d6d32e6
@@ -601,8 +602,8 @@
      Z                         0:f7b1eb17ad24
      Z@1                       1:925d80f479bb
      Z@2                       2:db815d6d32e6
-   * Z@3                       3:9ba5f110a0b3
-     four                      3:9ba5f110a0b3
+     Z@3                       3:9ba5f110a0b3
+   * four                      3:9ba5f110a0b3
      should-end-on-two         2:db815d6d32e6
   $ hg bookmark Z
   moving bookmark 'Z' forward from f7b1eb17ad24
@@ -620,9 +621,9 @@
   $ hg book foo@3 -r 3
   $ hg book foo -r foo@3
   $ hg book
-     Z                         3:9ba5f110a0b3
+   * Z                         3:9ba5f110a0b3
      Z@1                       1:925d80f479bb
-   * foo                       3:9ba5f110a0b3
+     foo                       3:9ba5f110a0b3
      foo@1                     0:f7b1eb17ad24
      foo@2                     2:db815d6d32e6
      four                      3:9ba5f110a0b3