Clarify exception handler scope in contextlib
Moved explicit raise from inside try to try...else.
This commit is contained in:
parent
eca52296da
commit
680e20beee
|
@ -98,7 +98,6 @@ class _GeneratorContextManager(ContextDecorator, AbstractContextManager):
|
|||
value = type()
|
||||
try:
|
||||
self.gen.throw(type, value, traceback)
|
||||
raise RuntimeError("generator didn't stop after throw()")
|
||||
except StopIteration as exc:
|
||||
# Suppress StopIteration *unless* it's the same exception that
|
||||
# was passed to throw(). This prevents a StopIteration
|
||||
|
@ -124,6 +123,8 @@ class _GeneratorContextManager(ContextDecorator, AbstractContextManager):
|
|||
#
|
||||
if sys.exc_info()[1] is not value:
|
||||
raise
|
||||
else:
|
||||
raise RuntimeError("generator didn't stop after throw()")
|
||||
|
||||
|
||||
def contextmanager(func):
|
||||
|
|
Loading…
Reference in New Issue