diff options
author | Cody Russell <bratsche@gnome.org> | 2007-08-14 22:55:23 +0000 |
---|---|---|
committer | Cody Russell <bratsche@src.gnome.org> | 2007-08-14 22:55:23 +0000 |
commit | edf4c171650ae713115235c678571e8900d4c9b8 (patch) | |
tree | 5897e70c5545bfc3a60b7e98186531f3acd659f5 /gobject/gsignal.c | |
parent | 4c3720264cf8390977228a8dfd795b070ef4b7e5 (diff) |
g_type_default_interface_ref() was not ensuring working g_signal_list_ids.
2007-08-14 Cody Russell <bratsche@gnome.org>
* gobject/gsignal.c: g_type_default_interface_ref() was not
ensuring working g_signal_list_ids. Added checks for
!G_TYPE_IS_INTERFACE (itype).
(#465625, by some guy who calls himself Yeti)
svn path=/trunk/; revision=5704
Diffstat (limited to 'gobject/gsignal.c')
-rw-r--r-- | gobject/gsignal.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gobject/gsignal.c b/gobject/gsignal.c index c65565ae2..8ce1b6c6a 100644 --- a/gobject/gsignal.c +++ b/gobject/gsignal.c @@ -1058,10 +1058,10 @@ g_signal_list_ids (GType itype, if (!g_type_name (itype)) g_warning (G_STRLOC ": unable to list signals for invalid type id `%lu'", itype); - else if (!G_TYPE_IS_INSTANTIATABLE (itype)) + else if (!G_TYPE_IS_INSTANTIATABLE (itype) && !G_TYPE_IS_INTERFACE (itype)) g_warning (G_STRLOC ": unable to list signals of non instantiatable type `%s'", g_type_name (itype)); - else if (!g_type_class_peek (itype)) + else if (!g_type_class_peek (itype) && !G_TYPE_IS_INTERFACE (itype)) g_warning (G_STRLOC ": unable to list signals of unloaded type `%s'", g_type_name (itype)); } |