hgext/bookmarks.py
changeset 7550 fead6cf99a09
parent 7489 9b64589b1112
child 7552 a9221c7f51a4
--- a/hgext/bookmarks.py	Sun Dec 07 19:33:26 2008 +0100
+++ b/hgext/bookmarks.py	Thu Dec 18 10:51:11 2008 +0100
@@ -64,9 +64,9 @@
     '''
     if os.path.exists(repo.join('bookmarks')):
         util.copyfile(repo.join('bookmarks'), repo.join('undo.bookmarks'))
-    file = repo.opener('bookmarks', 'w+')
     if current(repo) not in refs:
         setcurrent(repo, None)
+    file = repo.opener('bookmarks', 'w+')
     for refspec, node in refs.items():
         file.write("%s %s\n" % (hex(node), refspec))
     file.close()
@@ -138,6 +138,8 @@
             raise util.Abort(_("new bookmark name required"))
         marks[mark] = marks[rename]
         del marks[rename]
+        if current(repo) == rename:
+            setcurrent(repo, mark)
         write(repo, marks)
         return