diff options
author | James Henstridge <james@daa.com.au> | 2002-03-22 13:58:39 +0000 |
---|---|---|
committer | James Henstridge <jamesh@src.gnome.org> | 2002-03-22 13:58:39 +0000 |
commit | ff074b8a6e76b4f17093b303e420dc03c022d7de (patch) | |
tree | 65972dcea97d5e8f5ba1fccc05a8bcb477bcee13 /gtk/libglade.override | |
parent | 694999304f2c6ef36834be4d4f9ee7d878a39252 (diff) | |
download | pygtk-ff074b8a6e76b4f17093b303e420dc03c022d7de.tar.gz |
don't decref the return value of PyDict_GetItemString().
2002-03-22 James Henstridge <james@daa.com.au>
* gtk/libglade.override (connect_many): don't decref the return
value of PyDict_GetItemString().
Diffstat (limited to 'gtk/libglade.override')
-rw-r--r-- | gtk/libglade.override | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/gtk/libglade.override b/gtk/libglade.override index 9407b4e1..aa0ef158 100644 --- a/gtk/libglade.override +++ b/gtk/libglade.override @@ -100,29 +100,25 @@ connect_many(const gchar *handler_name, GObject *obj, if (PyTuple_Check(tuple)) { PyObject *callback = PyTuple_GetItem(tuple, 0); PyObject *extra = PySequence_GetSlice(tuple, 1, PyTuple_Size(tuple)); + PyObject *other = NULL; - if (connect_object) { - PyObject *other = pygobject_new((GObject *)connect_object); + if (connect_object) + other = pygobject_new((GObject *)connect_object); - closure = pyg_closure_new(callback, extra, other); - } else { - closure = pyg_closure_new(callback, extra, NULL); - } + closure = pyg_closure_new(callback, extra, other); Py_DECREF(extra); } else if (PyCallable_Check(tuple)) { - if (connect_object) { - PyObject *other = pygobject_new((GObject *)connect_object); + PyObject *other = NULL; + + if (connect_object) + other = pygobject_new((GObject *)connect_object); - closure = pyg_closure_new(tuple, NULL, other); - } else { - closure = pyg_closure_new(tuple, NULL, NULL); - } + closure = pyg_closure_new(tuple, NULL, other); } else { g_warning("handler for `%s' not callable or a tuple", handler_name); Py_DECREF(tuple); return; } - Py_DECREF(tuple); g_signal_connect_closure(obj, signal_name, closure, after); } |