Fix the user signal handler of faulthandler
Don't exit the tstate is NULL to restore the errno and chain the signal handler
if needed.
diff --git a/Modules/faulthandler.c b/Modules/faulthandler.c
index 6e8fbf7..469e490 100644
--- a/Modules/faulthandler.c
+++ b/Modules/faulthandler.c
@@ -653,9 +653,8 @@
if (user->all_threads)
_Py_DumpTracebackThreads(user->fd, user->interp, tstate);
else {
- if (tstate == NULL)
- return;
- _Py_DumpTraceback(user->fd, tstate);
+ if (tstate != NULL)
+ _Py_DumpTraceback(user->fd, tstate);
}
#ifdef HAVE_SIGACTION
if (user->chain) {