diff options
author | John Finlay <finlay@src.gnome.org> | 2006-07-06 17:44:55 +0000 |
---|---|---|
committer | John Finlay <finlay@src.gnome.org> | 2006-07-06 17:44:55 +0000 |
commit | 379f0d8cfa551c9c70253ae1b97d5460a3db1ee3 (patch) | |
tree | fc251bf212209957ddb4671e08dbd314e9a648df /atk.override | |
parent | 00aec99e2241f9c8f9610a0d2b953a74a912abdc (diff) | |
download | pygtk-379f0d8cfa551c9c70253ae1b97d5460a3db1ee3.tar.gz |
Fix reference leaks.
* atk.override (_wrap_atk_state_set_contains_states)
(_wrap_atk_state_set_add_states): Fix reference leaks.
Diffstat (limited to 'atk.override')
-rw-r--r-- | atk.override | 12 |
1 files changed, 10 insertions, 2 deletions
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; } |