From 25b5666ce1385c98063cec56a102cb58e674322d Mon Sep 17 00:00:00 2001 From: "Gustavo J. A. M. Carneiro" Date: Sat, 22 Jan 2005 17:45:46 +0000 Subject: Bug 164441: leak in gobject.type_register(); patch by Mark McLoughlin --- gobject/gobjectmodule.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gobject/gobjectmodule.c b/gobject/gobjectmodule.c index 337b329..0f1ba8f 100644 --- a/gobject/gobjectmodule.c +++ b/gobject/gobjectmodule.c @@ -941,12 +941,15 @@ pyg_type_register(PyObject *self, PyObject *args) class->tp_name, name_serial > 1? name_serial_str : NULL, NULL); + Py_DECREF(module); } else { if (module) Py_DECREF(module); else PyErr_Clear(); - type_name = g_strdup(class->tp_name); + type_name = g_strconcat(class->tp_name, + name_serial > 1? name_serial_str : NULL, + NULL); } /* convert '.' in type name to '+', which isn't banned (grumble) */ for (i = 0; type_name[i] != '\0'; i++) -- cgit