mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-08-01 15:03:39 +02:00
gobject: use g_once_init_enter_pointer for GType initializers
GType is either an integer or a pointer, so we have to use the _pointer version here to support architectures such as Morello. Helps: https://gitlab.gnome.org/GNOME/glib/-/issues/2842 See also: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3578
This commit is contained in:
committed by
Philip Withnall
parent
a1dfecf11f
commit
5ecd3cbe52
@@ -1631,7 +1631,7 @@ g_param_spec_get_default_value (GParamSpec *pspec)
|
||||
* done before a g_once_init_enter() could take the fast path in
|
||||
* another thread.
|
||||
*/
|
||||
if (g_once_init_enter (&priv->default_value.g_type))
|
||||
if (g_once_init_enter_pointer (&priv->default_value.g_type))
|
||||
{
|
||||
GValue default_value = G_VALUE_INIT;
|
||||
|
||||
@@ -1641,7 +1641,7 @@ g_param_spec_get_default_value (GParamSpec *pspec)
|
||||
/* store all but the type */
|
||||
memcpy (priv->default_value.data, default_value.data, sizeof (default_value.data));
|
||||
|
||||
g_once_init_leave (&priv->default_value.g_type, pspec->value_type);
|
||||
g_once_init_leave_pointer (&priv->default_value.g_type, pspec->value_type);
|
||||
}
|
||||
|
||||
return &priv->default_value;
|
||||
|
Reference in New Issue
Block a user