diff options
author | Johan Dahlin <johan@src.gnome.org> | 2005-09-02 15:03:53 +0000 |
---|---|---|
committer | Johan Dahlin <johan@src.gnome.org> | 2005-09-02 15:03:53 +0000 |
commit | 1bb1232911c08ec2a6f99ffd7ee606f7866f151d (patch) | |
tree | 054f3435bdfb5dc985bb9e65855b18de6fc132b1 | |
parent | 38ddcda759ea69c7a2e7b2df8eb78b986f85032e (diff) | |
download | pygtk-1bb1232911c08ec2a6f99ffd7ee606f7866f151d.tar.gz |
Also include interfaces, fixes #315038
* gobject/gobjectmodule.c: (pyg_signal_list_names):
Also include interfaces, fixes #315038
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | gobject/gobjectmodule.c | 10 |
2 files changed, 13 insertions, 2 deletions
@@ -1,5 +1,10 @@ 2005-09-02 Johan Dahlin <jdahlin@async.com.br> + * gobject/gobjectmodule.c: (pyg_signal_list_names): + Also include interfaces, fixes #315038 + +2005-09-02 Johan Dahlin <jdahlin@async.com.br> + * configure.in: post release version bump * Changelog.pre-2-8: Move old changelog diff --git a/gobject/gobjectmodule.c b/gobject/gobjectmodule.c index 078201c8..c43d368b 100644 --- a/gobject/gobjectmodule.c +++ b/gobject/gobjectmodule.c @@ -1320,7 +1320,8 @@ pyg_signal_list_names (PyObject *self, PyObject *args, PyObject *kwargs) guint n; guint *ids; guint i; - + gpointer iface = NULL; + if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O:gobject.signal_list_names", kwlist, &py_itype)) @@ -1339,6 +1340,8 @@ pyg_signal_list_names (PyObject *self, PyObject *args, PyObject *kwargs) PyErr_SetString(PyExc_TypeError, "type must be instantiable or an interface"); return NULL; + } else { + iface = g_type_default_interface_ref(itype); } ids = g_signal_list_ids(itype, &n); @@ -1352,7 +1355,10 @@ pyg_signal_list_names (PyObject *self, PyObject *args, PyObject *kwargs) g_free(ids); if (class) - g_type_class_unref(class); + g_type_class_unref(class); + else + g_type_default_interface_unref(iface); + return list; } |