diff options
author | Matt Wilson <msw@redhat.com> | 2001-10-05 19:01:08 +0000 |
---|---|---|
committer | Matt Wilson <msw@src.gnome.org> | 2001-10-05 19:01:08 +0000 |
commit | 72dacec4b5571695d9b5bc57256ced99bc7ecea9 (patch) | |
tree | d27d3343ff77682fa2990f64c2b51d9a913c866f | |
parent | be580bd14c0f5cf56ef6bb4928e18b26fbc939d0 (diff) | |
download | pygtk-72dacec4b5571695d9b5bc57256ced99bc7ecea9.tar.gz |
mask out G_SIGNAL_TYPE_STATIC_SCOPE to fix signal emission.
2001-10-05 Matt Wilson <msw@redhat.com>
* gobjectmodule.c (pygobject_emit): mask out
G_SIGNAL_TYPE_STATIC_SCOPE to fix signal emission.
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | gobject/gobjectmodule.c | 7 | ||||
-rw-r--r-- | gobjectmodule.c | 7 |
3 files changed, 17 insertions, 8 deletions
@@ -1,3 +1,8 @@ +2001-10-05 Matt Wilson <msw@redhat.com> + + * gobjectmodule.c (pygobject_emit): mask out + G_SIGNAL_TYPE_STATIC_SCOPE to fix signal emission. + 2001-10-05 Johan Dahlin <zilch.am@home.se> * gobjectmodule.c (pyg_closure_new): Handle non-Tuple parameters. @@ -5,8 +10,10 @@ * gtk/gtk.override (_wrap_gtk_window_list_toplevels): Bound (_wrap_gtk_toolbar_insert_stock): Bound. - * gtk/gtk.defs (binding_entry_clear): rename from gtk_bindings_entry_clear - (color_selection_palette_from_string): rename from gtk_color_selection_palette_from_string + * gtk/gtk.defs (binding_entry_clear): rename from + gtk_bindings_entry_clear + (color_selection_palette_from_string): rename from + gtk_color_selection_palette_from_string (set_border_width): Added (set_resize_mode): Added (get_children): Added diff --git a/gobject/gobjectmodule.c b/gobject/gobjectmodule.c index b5b99ce8..ee76f47d 100644 --- a/gobject/gobjectmodule.c +++ b/gobject/gobjectmodule.c @@ -1534,7 +1534,8 @@ pygobject_emit(PyGObject *self, PyObject *args) g_value_set_object(¶ms[0], G_OBJECT(self->obj)); for (i = 0; i < query.n_params; i++) - g_value_init(¶ms[i + 1], query.param_types[i]); + g_value_init(¶ms[i + 1], + query.param_types[i] & ~G_SIGNAL_TYPE_STATIC_SCOPE); for (i = 0; i < query.n_params; i++) { PyObject *item = PyTuple_GetItem(args, i+1); @@ -1553,12 +1554,12 @@ pygobject_emit(PyGObject *self, PyObject *args) } } if (query.return_type != G_TYPE_NONE) - g_value_init(&ret, query.return_type); + g_value_init(&ret, query.return_type & ~G_SIGNAL_TYPE_STATIC_SCOPE); g_signal_emitv(params, signal_id, detail, &ret); for (i = 0; i < query.n_params + 1; i++) g_value_unset(¶ms[i]); g_free(params); - if (query.return_type != G_TYPE_NONE) { + if (query.return_type & ~G_SIGNAL_TYPE_STATIC_SCOPE != G_TYPE_NONE) { py_ret = pyg_value_as_pyobject(&ret); g_value_unset(&ret); } else { diff --git a/gobjectmodule.c b/gobjectmodule.c index b5b99ce8..ee76f47d 100644 --- a/gobjectmodule.c +++ b/gobjectmodule.c @@ -1534,7 +1534,8 @@ pygobject_emit(PyGObject *self, PyObject *args) g_value_set_object(¶ms[0], G_OBJECT(self->obj)); for (i = 0; i < query.n_params; i++) - g_value_init(¶ms[i + 1], query.param_types[i]); + g_value_init(¶ms[i + 1], + query.param_types[i] & ~G_SIGNAL_TYPE_STATIC_SCOPE); for (i = 0; i < query.n_params; i++) { PyObject *item = PyTuple_GetItem(args, i+1); @@ -1553,12 +1554,12 @@ pygobject_emit(PyGObject *self, PyObject *args) } } if (query.return_type != G_TYPE_NONE) - g_value_init(&ret, query.return_type); + g_value_init(&ret, query.return_type & ~G_SIGNAL_TYPE_STATIC_SCOPE); g_signal_emitv(params, signal_id, detail, &ret); for (i = 0; i < query.n_params + 1; i++) g_value_unset(¶ms[i]); g_free(params); - if (query.return_type != G_TYPE_NONE) { + if (query.return_type & ~G_SIGNAL_TYPE_STATIC_SCOPE != G_TYPE_NONE) { py_ret = pyg_value_as_pyobject(&ret); g_value_unset(&ret); } else { |