mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-02-24 19:22:11 +01:00
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:
parent
d9b8ae15fe
commit
c9a28c0879
@ -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>
|
2006-10-01 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
* === Released 2.12.4 ===
|
* === Released 2.12.4 ===
|
||||||
|
@ -1511,11 +1511,13 @@ static inline GTypeClass*
|
|||||||
instance_real_class_get (gpointer instance)
|
instance_real_class_get (gpointer instance)
|
||||||
{
|
{
|
||||||
InstanceRealClass key, *node;
|
InstanceRealClass key, *node;
|
||||||
|
GTypeClass *class;
|
||||||
key.instance = instance;
|
key.instance = instance;
|
||||||
G_LOCK (instance_real_class);
|
G_LOCK (instance_real_class);
|
||||||
node = instance_real_class_bsa ? g_bsearch_array_lookup (instance_real_class_bsa, &instance_real_class_bconfig, &key) : NULL;
|
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);
|
G_UNLOCK (instance_real_class);
|
||||||
return node ? node->class : NULL;
|
return class;
|
||||||
}
|
}
|
||||||
|
|
||||||
GTypeInstance*
|
GTypeInstance*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user