diff options
author | Eddie Elizondo <eduardo.elizondorueda@gmail.com> | 2019-03-27 11:52:18 (GMT) |
---|---|---|
committer | Petr Viktorin <encukou@gmail.com> | 2019-03-27 11:52:18 (GMT) |
commit | 364f0b0f19cc3f0d5e63f571ec9163cf41c62958 (patch) | |
tree | 977c0c418780824cca9ef9b4d920b9d423253e84 /Modules/_curses_panel.c | |
parent | 1fc5bf2ff27b898e8d9460d0fbc791e83009ed71 (diff) | |
download | cpython-364f0b0f19cc3f0d5e63f571ec9163cf41c62958.zip cpython-364f0b0f19cc3f0d5e63f571ec9163cf41c62958.tar.gz cpython-364f0b0f19cc3f0d5e63f571ec9163cf41c62958.tar.bz2 |
bpo-35810: Incref heap-allocated types in PyObject_Init (GH-11661)
* Incref heap-allocated types in PyObject_Init
* Add documentation and porting notes to What's New
Diffstat (limited to 'Modules/_curses_panel.c')
-rw-r--r-- | Modules/_curses_panel.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Modules/_curses_panel.c b/Modules/_curses_panel.c index e7bbefd..53849e3 100644 --- a/Modules/_curses_panel.c +++ b/Modules/_curses_panel.c @@ -250,7 +250,10 @@ PyCursesPanel_New(PANEL *pan, PyCursesWindowObject *wo) static void PyCursesPanel_Dealloc(PyCursesPanelObject *po) { - PyObject *obj = (PyObject *) panel_userptr(po->pan); + PyObject *tp, *obj; + + tp = (PyObject *) Py_TYPE(po); + obj = (PyObject *) panel_userptr(po->pan); if (obj) { (void)set_panel_userptr(po->pan, NULL); Py_DECREF(obj); @@ -261,6 +264,7 @@ PyCursesPanel_Dealloc(PyCursesPanelObject *po) remove_lop(po); } PyObject_DEL(po); + Py_DECREF(tp); } /* panel_above(NULL) returns the bottom panel in the stack. To get |