mercurial/bookmarks.py
changeset 26999 2d79a354d843
parent 26781 1aee2ab0f902
child 27185 d52765831086
--- a/mercurial/bookmarks.py	Wed Nov 18 01:36:58 2015 -0800
+++ b/mercurial/bookmarks.py	Tue Nov 17 12:49:57 2015 -0800
@@ -249,7 +249,14 @@
         update = True
 
     if update:
-        marks.write()
+        lock = tr = None
+        try:
+            lock = repo.lock()
+            tr = repo.transaction('bookmark')
+            marks.recordchange(tr)
+            tr.close()
+        finally:
+            lockmod.release(tr, lock)
     return update
 
 def listbookmarks(repo):