+Fri Dec 26 01:34:01 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtype.c (g_type_class_peek_parent): Don't acquire a read lock
+ here. (#106433, Owen Taylor)
+
Wed Dec 17 23:29:17 2003 Matthias Clasen <maclas@gmx.de>
* gvalue.c (g_value_peek_pointer): Use g_assert() instead of
g_return_val_if_fail (g_class != NULL, NULL);
node = lookup_type_node_I (G_TYPE_FROM_CLASS (g_class));
- G_READ_LOCK (&type_rw_lock);
+ /* We used to acquire a read lock here. That is not necessary, since
+ * parent->data->class.class is constant as long as the derived class
+ * exists.
+ */
if (node && node->is_classed && node->data && NODE_PARENT_TYPE (node))
{
node = lookup_type_node_I (NODE_PARENT_TYPE (node));
}
else if (NODE_PARENT_TYPE (node))
g_warning (G_STRLOC ": invalid class pointer `%p'", g_class);
- G_READ_UNLOCK (&type_rw_lock);
return class;
}