mercurial/revlogutils/__init__.py
author Martin von Zweigbergk <martinvonz@google.com>
Sun, 21 Jul 2019 07:59:16 -0700
changeset 42696 36c692eb28d3
parent 39356 729082bb9938
child 43572 a7c0c5b5a50f
permissions -rw-r--r--
transaction: leave unfinished without crashing when not properly released I think the transaction.__del__ is there just as a last resort in case we (or an extension) forgot to release the transaction. When that happens, the repo can (or will on Python 3?) get deleted before the transaction. This leads to a crash in test-devel-warnings.t on Python 3 because we tried to access repo.dirstate, where repo was retried from a weak reference. There's not much we can do here, but let's at least avoid the crash. The user will have run `hg recover` afterwards regardless. Differential Revision: https://phab.mercurial-scm.org/D6664