Chris Jerdonek <[email protected]> added the comment:
The Django details might not matter so much at this point, but to add to
something I said above: It might not only be process_exception_by_middleware()
as I mentioned, but also asgiref's sync_to_async() function. In that function,
you can see an already active exception being re-raised (here the exc_info
comes from sys.exc_info()):
# If we have an exception, run the function inside the except block
# after raising it so exc_info is correctly populated.
if exc_info[1]:
try:
raise exc_info[1]
except:
return func(*args, **kwargs)
else:
return func(*args, **kwargs)
https://github.com/django/asgiref/blob/edd0570a4f6e46f0948afa5ef197a192bb95b7b7/asgiref/sync.py#L306-L314
----------
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue40696>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com