Revert "GObject: prevent installing properties after init"

This reverts commit ddb0ce1421.

Colin's smoke testing has found issues in at least gjs and
gnome-settings-daemon.  We'll need to see if we can address those.
This commit is contained in:
Ryan Lortie 2013-04-22 18:32:05 -04:00
parent ddb0ce1421
commit e8438f98e2
3 changed files with 2 additions and 18 deletions

View File

@ -540,10 +540,8 @@ g_object_class_install_property (GObjectClass *class,
g_return_if_fail (G_IS_PARAM_SPEC (pspec));
if (CLASS_HAS_DERIVED_CLASS (class))
g_error ("Attempt to add property %s::%s to class after it was derived", G_OBJECT_CLASS_NAME (class), pspec->name);
if (!g_type_is_in_init (G_OBJECT_CLASS_TYPE (class)))
g_error ("Attempt to add property %s::%s after class was initialised", G_OBJECT_CLASS_NAME (class), pspec->name);
g_error ("Attempt to add property %s::%s to class after it was derived",
G_OBJECT_CLASS_NAME (class), pspec->name);
class->flags |= CLASS_HAS_PROPS_FLAG;
@ -655,9 +653,6 @@ g_object_class_install_properties (GObjectClass *oclass,
g_error ("Attempt to add properties to %s after it was derived",
G_OBJECT_CLASS_NAME (oclass));
if (!g_type_is_in_init (G_OBJECT_CLASS_TYPE (oclass)))
g_error ("Attempt to add properties %s after it was initialised", G_OBJECT_CLASS_NAME (oclass));
oclass_type = G_OBJECT_CLASS_TYPE (oclass);
parent_type = g_type_parent (oclass_type);

View File

@ -72,7 +72,6 @@ void _g_closure_invoke_va (GClosure *closure,
int n_params,
GType *param_types);
gboolean g_type_is_in_init (GType type);
G_END_DECLS

View File

@ -4646,13 +4646,3 @@ g_type_ensure (GType type)
if (G_UNLIKELY (type == (GType)-1))
g_error ("can't happen");
}
gboolean
g_type_is_in_init (GType type)
{
TypeNode *node;
node = lookup_type_node_I (type);
return node->data->class.init_state != INITIALIZED;
}