Mercurial > hg
comparison mercurial/hg.py @ 26012:d815a5997576 stable
strip: use the 'finally: tr.release' pattern during stripping
The previous code, was calling 'abort' in all exception cases. This was wrong
when an exception was raised by post-close callback on the transaction. Calling
'abort' on an already closed transaction resulted in a error, shadowing the
original error.
We now use the same pattern as everywhere else. 'tr.release()' will abort the
transaction if we escape the scope without closing it. We add a test to make
sure we do not regress.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Sat, 08 Aug 2015 14:50:03 -0700 |
parents | 0d37b9b21467 |
children | 130c0b83e963 d08e7449ff27 |
comparison
equal
deleted
inserted
replaced
26000:9ac4e81b9659 | 26012:d815a5997576 |
---|