Properly re-raise exceptions from lock context handler.
This commit is contained in:
parent
0c75c13cc0
commit
9d4a36a62f
@ -213,13 +213,15 @@ def __enter__(self):
|
||||
return self._as
|
||||
|
||||
def __exit__(self, type, value, traceback):
|
||||
suppress = False
|
||||
if self._exit():
|
||||
if self._as and hasattr(self._as, '__exit__'):
|
||||
self._as.__exit__(type, value, traceback)
|
||||
if self._as.__exit__(type, value, traceback):
|
||||
suppress = True
|
||||
if self._release_fn:
|
||||
self._release_fn(type, value, traceback)
|
||||
if value:
|
||||
raise value
|
||||
if self._release_fn(type, value, traceback):
|
||||
suppress = True
|
||||
return suppress
|
||||
|
||||
|
||||
class ReadTransaction(LockTransaction):
|
||||
|
Loading…
Reference in New Issue
Block a user