Fri Dec 15 2006 Matthias Clasen <mclasen@redhat.com>

* gtype.c (instance_real_class_get): Dereference the pointer
        before dropping the lock.  (#378078, Jonathan Matthew)
This commit is contained in:
Matthias Clasen 2006-12-16 04:34:03 +00:00
parent d9b8ae15fe
commit c9a28c0879
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,8 @@
Fri Dec 15 2006 Matthias Clasen <mclasen@redhat.com>
* gtype.c (instance_real_class_get): Dereference the pointer
before dropping the lock. (#378078, Jonathan Matthew)
2006-10-01 Matthias Clasen <mclasen@redhat.com>
* === Released 2.12.4 ===

View File

@ -1511,11 +1511,13 @@ static inline GTypeClass*
instance_real_class_get (gpointer instance)
{
InstanceRealClass key, *node;
GTypeClass *class;
key.instance = instance;
G_LOCK (instance_real_class);
node = instance_real_class_bsa ? g_bsearch_array_lookup (instance_real_class_bsa, &instance_real_class_bconfig, &key) : NULL;
class = node ? node->class : NULL;
G_UNLOCK (instance_real_class);
return node ? node->class : NULL;
return class;
}
GTypeInstance*