D5624: localrepo: use context manager for lock and transaction in commitctx()
martinvonz (Martin von Zweigbergk)
phabricator at mercurial-scm.org
Fri Jan 25 15:01:56 EST 2019
This revision was automatically updated to reflect the committed changes.
Closed by commit rHG0132221c25cd: localrepo: use context manager for lock and transaction in commitctx() (authored by martinvonz, committed by ).
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D5624?vs=13307&id=13452
REVISION DETAIL
https://phab.mercurial-scm.org/D5624
AFFECTED FILES
mercurial/localrepo.py
CHANGE DETAILS
diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py
--- a/mercurial/localrepo.py
+++ b/mercurial/localrepo.py
@@ -2502,13 +2502,10 @@
from p1 or p2 are excluded from the committed ctx.files().
"""
- tr = None
p1, p2 = ctx.p1(), ctx.p2()
user = ctx.user()
- lock = self.lock()
- try:
- tr = self.transaction("commit")
+ with self.lock(), self.transaction("commit") as tr:
trp = weakref.proxy(tr)
if ctx.manifestnode():
@@ -2605,12 +2602,7 @@
#
# if minimal phase was 0 we don't need to retract anything
phases.registernew(self, tr, targetphase, [n])
- tr.close()
return n
- finally:
- if tr:
- tr.release()
- lock.release()
@unfilteredmethod
def destroying(self):
To: martinvonz, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list