From c4fb41816f6045dd608d4d97266f16feaf974b83 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Wed, 8 Mar 2023 00:21:13 -0800 Subject: [3.10] GH-102397: Fix segfault from race condition in signal handling (GH-102399) (#102527) GH-102397: Fix segfault from race condition in signal handling (GH-102399) (cherry picked from commit 1a84cc007e207f2dd61f86a7fc3d86632fdce72f) Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> Co-authored-by: Gregory P. Smith --- Modules/signalmodule.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'Modules/signalmodule.c') diff --git a/Modules/signalmodule.c b/Modules/signalmodule.c index 80fa4d50ee..bcfd553770 100644 --- a/Modules/signalmodule.c +++ b/Modules/signalmodule.c @@ -177,6 +177,10 @@ get_signal_state(PyObject *module) static inline int compare_handler(PyObject *func, PyObject *dfl_ign_handler) { + // See https://github.com/python/cpython/pull/102399 + if (func == NULL || dfl_ign_handler == NULL) { + return 0; + } assert(PyLong_CheckExact(dfl_ign_handler)); if (!PyLong_CheckExact(func)) { return 0; -- cgit v1.2.1