From 6a1688fb261548080c1f925ea7e2602234003fbc Mon Sep 17 00:00:00 2001 From: Serhiy Storchaka Date: Wed, 14 Jan 2026 21:12:08 +0200 Subject: [PATCH] Fix refleaks in new unicodedata classes added in gh-74902 --- Modules/unicodedata.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Modules/unicodedata.c b/Modules/unicodedata.c index 669aa26aee5dc1..6904ee14811d48 100644 --- a/Modules/unicodedata.c +++ b/Modules/unicodedata.c @@ -1885,9 +1885,11 @@ typedef struct { static void Segment_dealloc(PyObject *self) { + PyTypeObject *tp = Py_TYPE(self); PyObject_GC_UnTrack(self); Py_DECREF(((SegmentObject *)self)->string); - PyObject_GC_Del(self); + tp->tp_free(self); + Py_DECREF(tp); } static int @@ -1959,9 +1961,11 @@ typedef struct { static void GBI_dealloc(PyObject *self) { + PyTypeObject *tp = Py_TYPE(self); PyObject_GC_UnTrack(self); Py_DECREF(((GraphemeBreakIterator *)self)->iter.str); - PyObject_GC_Del(self); + tp->tp_free(self); + Py_DECREF(tp); } static int