Nick Coghlan added the comment:

Ah, confusion between "exception has been raised" and "we're in an active 
exception handler" is almost certainly what is happening. In both issue 22906 
and my previous codec exception wrapping work, we're still in the C code that 
raised the exception, *before* we make it back to the eval loop and any Python 
level exception handling.

So I think that's the distinction we need to ensure is documented, and 
potentially a new public helper function provided - if you're in a Python level 
exception handler, then exception context chaining will be handled 
automatically for you in PyErr_SetObject, but if you're still in C code and 
haven't made it back to the eval loop after raising an exception, then you're 
going to have to do any exception chaining explicitly.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue23188>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to