https://github.com/python/cpython/commit/0ddfb5717f761fcab7929957eca65044116a96a4
commit: 0ddfb5717f761fcab7929957eca65044116a96a4
branch: main
author: Victor Stinner <[email protected]>
committer: vstinner <[email protected]>
date: 2025-03-14T10:23:54+01:00
summary:
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().
files:
M Python/legacy_tracing.c
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,
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]