From 8d3795474eb70d246ccd9dae23a784436238ed79 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 2 Jul 2013 00:14:56 +0200 Subject: Issue #18343: faulthandler.register() now keeps the previous signal handler when the function is called twice, so faulthandler.unregister() restores correctly the original signal handler. --- Modules/faulthandler.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'Modules') diff --git a/Modules/faulthandler.c b/Modules/faulthandler.c index 7e363f03c9..c86a27f26e 100644 --- a/Modules/faulthandler.c +++ b/Modules/faulthandler.c @@ -742,6 +742,8 @@ faulthandler_register_py(PyObject *self, PyErr_SetFromErrno(PyExc_OSError); return NULL; } + + user->previous = previous; } Py_XDECREF(user->file); @@ -750,7 +752,6 @@ faulthandler_register_py(PyObject *self, user->fd = fd; user->all_threads = all_threads; user->chain = chain; - user->previous = previous; user->interp = tstate->interp; user->enabled = 1; -- cgit v1.2.1