styleproperty: Call style properties init function in more places

In particular, call it when querying properties by id. This is necessary
for make check to not die.
This commit is contained in:
Benjamin Otte 2012-01-09 22:06:17 +01:00
parent 2dc10600ea
commit c4566da282
3 changed files with 18 additions and 3 deletions

View File

@ -287,6 +287,12 @@ _gtk_css_style_property_get_n_properties (void)
GtkCssStylePropertyClass *klass;
klass = g_type_class_peek (GTK_TYPE_CSS_STYLE_PROPERTY);
if (G_UNLIKELY (klass == NULL))
{
_gtk_style_property_init_properties ();
klass = g_type_class_peek (GTK_TYPE_CSS_STYLE_PROPERTY);
g_assert (klass);
}
return klass->style_properties->len;
}
@ -307,6 +313,13 @@ _gtk_css_style_property_lookup_by_id (guint id)
GtkCssStylePropertyClass *klass;
klass = g_type_class_peek (GTK_TYPE_CSS_STYLE_PROPERTY);
if (G_UNLIKELY (klass == NULL))
{
_gtk_style_property_init_properties ();
klass = g_type_class_peek (GTK_TYPE_CSS_STYLE_PROPERTY);
g_assert (klass);
}
g_return_val_if_fail (id < klass->style_properties->len, NULL);
return g_ptr_array_index (klass->style_properties, id);
}

View File

@ -226,8 +226,8 @@ _gtk_style_property_query (GtkStyleProperty *property,
klass->query (property, props, state, value);
}
static void
gtk_style_property_init_properties (void)
void
_gtk_style_property_init_properties (void)
{
static gboolean initialized = FALSE;
@ -258,7 +258,7 @@ _gtk_style_property_lookup (const char *name)
g_return_val_if_fail (name != NULL, NULL);
gtk_style_property_init_properties ();
_gtk_style_property_init_properties ();
klass = g_type_class_peek (GTK_TYPE_STYLE_PROPERTY);

View File

@ -78,6 +78,8 @@ struct _GtkStylePropertyClass
GType _gtk_style_property_get_type (void) G_GNUC_CONST;
void _gtk_style_property_init_properties (void);
GtkStyleProperty * _gtk_style_property_lookup (const char *name);
const char * _gtk_style_property_get_name (GtkStyleProperty *property);