Message370169
I don't think I understand what you mean by "reentrant"... we don't have any single piece of code that's calling back into itself. The question is about what the tp_dealloc contract is.
Digging into it more, it looks like the standard is for typeobject.c:slot_tp_finalize to save/restore exceptions when invoking Python-level __del__ methods, rather than it being the responsibility of the tp_dealloc or tp_finalizer caller. (And finding that code also answers my next question, which was going to be whether there are any other dance steps you have to do when re-entering CPython from a tp_dealloc!)
So I guess this is a PySide2 bug. |
|
Date |
User |
Action |
Args |
2020-05-28 07:51:18 | njs | set | recipients:
+ njs, lemburg, tim.peters, twouters, asvetlov, yselivanov |
2020-05-28 07:51:18 | njs | set | messageid: <1590652278.45.0.456977303615.issue40789@roundup.psfhosted.org> |
2020-05-28 07:51:18 | njs | link | issue40789 messages |
2020-05-28 07:51:18 | njs | create | |
|