diff --git a/gobject/gtype.c b/gobject/gtype.c index a82144251..1fd31e87d 100644 --- a/gobject/gtype.c +++ b/gobject/gtype.c @@ -1006,7 +1006,10 @@ check_add_interface_L (GType instance_type, { g_warning ("attempting to add an interface (%s) to class (%s) after class_init", NODE_NAME (iface), NODE_NAME (node)); - return FALSE; + + /* See https://bugzilla.gnome.org/show_bug.cgi?id=697229 */ + if (!g_str_has_prefix (NODE_NAME (node), "gtkmm__CustomObject_")) + return FALSE; } tnode = lookup_type_node_I (NODE_PARENT_TYPE (iface)); if (NODE_PARENT_TYPE (tnode) && !type_lookup_iface_entry_L (node, tnode))