--- a/mercurial/localrepo.py Thu May 14 13:20:40 2009 -0500
+++ b/mercurial/localrepo.py Thu May 14 13:20:40 2009 -0500
@@ -774,10 +774,9 @@
force = True
if files:
files = list(set(files))
+
+ wlock = self.wlock()
try:
- wlock = self.wlock()
- lock = self.lock()
-
p1, p2 = self.dirstate.parents()
if (not force and p2 != nullid and
@@ -817,7 +816,7 @@
return r
finally:
- release(lock, wlock)
+ wlock.release()
def commitctx(self, ctx):
"""Add a new revision to current repository.
@@ -825,15 +824,12 @@
Revision information is passed in the context.memctx argument.
commitctx() does not touch the working directory.
"""
- lock = self.lock()
- try:
- return self._commitctx(ctx, force=True, force_editor=False,
- empty_ok=True, working=False)
- finally:
- lock.release()
+ return self._commitctx(ctx, force=True, force_editor=False,
+ empty_ok=True, working=False)
def _commitctx(self, ctx, force=False, force_editor=False, empty_ok=False,
working=True):
+ lock = self.lock()
tr = None
valid = 0 # don't save the dirstate if this isn't set
try:
@@ -958,6 +954,7 @@
if not valid: # don't save our updated dirstate
self.dirstate.invalidate()
del tr
+ lock.release()
def walk(self, match, node=None):
'''