D12122: dirstate: use a context manager when writing the dirstate
marmoute (Pierre-Yves David)
phabricator at mercurial-scm.org
Mon Jan 31 15:30:41 UTC 2022
marmoute created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.
REVISION SUMMARY
This make sure the file is closed in a timely manner.
We define a lambda for the file opening. It might seems a bit overkill here but
a future changeset will need to do more of those.
REPOSITORY
rHG Mercurial
BRANCH
default
REVISION DETAIL
https://phab.mercurial-scm.org/D12122
AFFECTED FILES
mercurial/dirstate.py
CHANGE DETAILS
diff --git a/mercurial/dirstate.py b/mercurial/dirstate.py
--- a/mercurial/dirstate.py
+++ b/mercurial/dirstate.py
@@ -713,8 +713,9 @@
)
return
- st = self._opener(filename, b"w", atomictemp=True, checkambig=True)
- self._writedirstate(tr, st)
+ file = lambda f: self._opener(f, b"w", atomictemp=True, checkambig=True)
+ with file(self._filename) as f:
+ self._writedirstate(tr, f)
def addparentchangecallback(self, category, callback):
"""add a callback to be called when the wd parents are changed
To: marmoute, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
More information about the Mercurial-devel
mailing list