From f4ba191447662947a1d2d5863fc8bd0e3fddc7b3 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Thu, 13 Mar 2025 17:21:24 +0100 Subject: [PATCH] gh-111178: Fix _PyLegacyEventHandler_Type deallocator 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(). --- Python/legacy_tracing.c | 1 - 1 file changed, 1 deletion(-) diff --git a/Python/legacy_tracing.c b/Python/legacy_tracing.c index 82465c66ab5231..124b219ea8af97 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,