[PATCH 3 of 6] transaction: reset transaction on abort
Henrik Stuart
hg at hstuart.dk
Tue Apr 21 12:33:22 CDT 2009
# HG changeset patch
# User Henrik Stuart <hg at hstuart.dk>
# Date 1240164152 -7200
# Node ID bdd6ec1c2f1c66ef7afc7ae7ce1bc503ede12c9f
# Parent ba84ff05efde9ca3cecc2106f8aa5afc53bbf353
transaction: reset transaction on abort
Prevent the use of the transaction after it has been aborted.
Co-contributor: Sune Foldager <cryo at cyanite.org>
diff -r ba84ff05efde -r bdd6ec1c2f1c mercurial/transaction.py
--- a/mercurial/transaction.py Mon Apr 20 11:18:22 2009 +0200
+++ b/mercurial/transaction.py Sun Apr 19 20:02:32 2009 +0200
@@ -99,6 +99,9 @@
self._abort()
def _abort(self):
+ self.count = 0
+ self.file.close()
+
if not self.entries: return
self.report(_("transaction abort!\n"))
@@ -114,13 +117,14 @@
self.entries = []
if not failed:
- self.file.close()
os.unlink(self.journal)
- self.journal = None
self.report(_("rollback completed\n"))
else:
self.report(_("rollback failed - please run hg recover\n"))
+ self.journal = None
+
+
def rollback(opener, file):
files = {}
for l in open(file).readlines():
More information about the Mercurial-devel
mailing list