From 379f0d8cfa551c9c70253ae1b97d5460a3db1ee3 Mon Sep 17 00:00:00 2001 From: John Finlay Date: Thu, 6 Jul 2006 17:44:55 +0000 Subject: Fix reference leaks. * atk.override (_wrap_atk_state_set_contains_states) (_wrap_atk_state_set_add_states): Fix reference leaks. --- ChangeLog | 5 +++++ atk.override | 12 ++++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index a8ee19a5..66ba1172 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2006-07-06 John Finlay + + * atk.override (_wrap_atk_state_set_contains_states) + (_wrap_atk_state_set_add_states): Fix reference leaks. + 2006-07-06 Gustavo J. A. M. Carneiro * gtk/gtk.override (_wrap_gtk_color_selection_palette_to_string): diff --git a/atk.override b/atk.override index 5b776d9e..5f33191d 100644 --- a/atk.override +++ b/atk.override @@ -283,10 +283,14 @@ _wrap_atk_state_set_add_states(PyGObject *self, PyObject *args, for (i = 0; i < count; i++) { if (pyg_enum_get_value(ATK_TYPE_STATE_TYPE, PySequence_Fast_GET_ITEM(py_types, i), - (gpointer)&types[i])) + (gpointer)&types[i])) { + Py_DECREF(py_types); return NULL; + } } atk_state_set_add_states(ATK_STATE_SET(self->obj), types, count); + + Py_DECREF(py_types); Py_INCREF(Py_None); return Py_None; } @@ -315,8 +319,10 @@ _wrap_atk_state_set_contains_states(PyGObject *self, PyObject *args, for (i = 0; i < count; i++) { if (pyg_enum_get_value(ATK_TYPE_STATE_TYPE, PySequence_Fast_GET_ITEM(py_types, i), - (gpointer)&types[i])) + (gpointer)&types[i])) { + Py_DECREF(py_types); return NULL; + } } ret = atk_state_set_contains_states(ATK_STATE_SET(self->obj), types, count); @@ -324,6 +330,8 @@ _wrap_atk_state_set_contains_states(PyGObject *self, PyObject *args, py_ret = Py_True; else py_ret = Py_False; + + Py_DECREF(py_types); Py_INCREF(py_ret); return py_ret; } -- cgit v1.2.1