From 543542372c7e64d4563b3cfb17809adbbb3249dc Mon Sep 17 00:00:00 2001 From: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> Date: Tue, 8 Nov 2022 05:28:03 +0000 Subject: [PATCH 1/2] fix refleak --- Modules/_testcapimodule.c | 1 + 1 file changed, 1 insertion(+) diff --git a/Modules/_testcapimodule.c b/Modules/_testcapimodule.c index 0e09c97bea09a5..5a7b8837758fcc 100644 --- a/Modules/_testcapimodule.c +++ b/Modules/_testcapimodule.c @@ -3382,6 +3382,7 @@ slot_tp_del(PyObject *self) else Py_DECREF(res); } + Py_DECREF(tp_del); /* Restore the saved exception. */ PyErr_Restore(error_type, error_value, error_traceback); From 47560dc4ea16672f79b49228e01d441e21ed29b2 Mon Sep 17 00:00:00 2001 From: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> Date: Tue, 8 Nov 2022 06:12:04 +0000 Subject: [PATCH 2/2] fix nit --- Modules/_testcapimodule.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/_testcapimodule.c b/Modules/_testcapimodule.c index 5a7b8837758fcc..1624a93ec3f3e3 100644 --- a/Modules/_testcapimodule.c +++ b/Modules/_testcapimodule.c @@ -3375,6 +3375,7 @@ slot_tp_del(PyObject *self) } /* Execute __del__ method, if any. */ del = _PyType_Lookup(Py_TYPE(self), tp_del); + Py_DECREF(tp_del); if (del != NULL) { res = PyObject_CallOneArg(del, self); if (res == NULL) @@ -3382,7 +3383,6 @@ slot_tp_del(PyObject *self) else Py_DECREF(res); } - Py_DECREF(tp_del); /* Restore the saved exception. */ PyErr_Restore(error_type, error_value, error_traceback);