From: Victor Stinner Date: Fri, 14 Mar 2025 09:23:54 +0000 (+0100) Subject: gh-111178: Fix _PyLegacyEventHandler_Type deallocator (#131193) X-Git-Tag: v3.14.0a6~15 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0ddfb5717f761fcab7929957eca65044116a96a4;p=thirdparty%2FPython%2Fcpython.git gh-111178: Fix _PyLegacyEventHandler_Type deallocator (#131193) Don't use PyObject_Free() as tp_dealloc to avoid an undefined behavior. Instead, use the default deallocator which just calls tp_free which is PyObject_Free(). --- diff --git a/Python/legacy_tracing.c b/Python/legacy_tracing.c index 82465c66ab52..124b219ea8af 100644 --- a/Python/legacy_tracing.c +++ b/Python/legacy_tracing.c @@ -382,7 +382,6 @@ PyTypeObject _PyLegacyEventHandler_Type = { PyVarObject_HEAD_INIT(&PyType_Type, 0) "sys.legacy_event_handler", sizeof(_PyLegacyEventHandler), - .tp_dealloc = (destructor)PyObject_Free, .tp_vectorcall_offset = offsetof(_PyLegacyEventHandler, vectorcall), .tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HAVE_VECTORCALL | Py_TPFLAGS_DISALLOW_INSTANTIATION,