/* Returns: (transfer none): the data, or NULL if no data was found  */
gpointer g_type_get_qdata(GType type, GQuark quark)
/* Returns: (transfer none): the data, or NULL if no data was found  */
gpointer g_type_get_qdata(GType type, GQuark quark)
{
  TypeNode *node;
  gpointer data;
  node = lookup_type_node_I (type);
  if (node)
    {
      G_READ_LOCK (&type_rw_lock);
      data = type_get_qdata_L (node, quark);
      G_READ_UNLOCK (&type_rw_lock);
    }
  else
    {
      g_return_val_if_fail (node != NULL, NULL);
      data = NULL;
    }
  return data;
}