Skip to content
Snippets Groups Projects
Commit 5b0beaf4 authored by Pierre-Yves David's avatar Pierre-Yves David :octopus:
Browse files

dirstate: write dirstate on successful exit of changing_parents context

This is the first step toward having more sensible and predicatable write
patterns for the dirstate. Having better write/rollback patterns will greatly
reduce and clarify the needs to backup the dirstate.
parent 7a8bfc05
No related branches found
No related tags found
2 merge requests!485branching: merge default into stable,!407improve changing-parents context
......@@ -178,7 +178,18 @@
# manager
if self._parentwriters <= 0:
assert self._parentwriters == 0
self._invalidated_context = False
if self._invalidated_context:
self._invalidated_context = False
else:
# When an exception occured, `_invalidated_context`
# would have been set to True by the `invalidate`
# call earlier.
#
# We don't have more straightforward code, because the
# Exception catching (and the associated `invalidate`
# calling) might have been called by a nested context
# instead of the top level one.
self.write(repo.currenttransaction())
# here to help migration to the new code
def parentchange(self):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment