mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-06-23 12:44:54 +02:00
notify: Remove g_object_notify_queue_from_object()
The function will not be safe with object locking in place, so we remove it. The workaround is somewhat ugly, but it works. https://bugzilla.gnome.org/show_bug.cgi?id=166020
This commit is contained in:
parent
83026092eb
commit
65797f7e54
@ -978,12 +978,14 @@ g_object_thaw_notify (GObject *object)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
g_object_ref (object);
|
g_object_ref (object);
|
||||||
nqueue = g_object_notify_queue_from_object (object, &property_notify_context);
|
|
||||||
if (!nqueue || !nqueue->freeze_count)
|
/* FIXME: Freezing is the only way to get at the notify queue.
|
||||||
g_warning ("%s: property-changed notification for %s(%p) is not frozen",
|
* So we freeze once and then thaw twice.
|
||||||
G_STRFUNC, G_OBJECT_TYPE_NAME (object), object);
|
*/
|
||||||
else
|
nqueue = g_object_notify_queue_freeze (object, &property_notify_context);
|
||||||
g_object_notify_queue_thaw (object, nqueue);
|
g_object_notify_queue_thaw (object, nqueue);
|
||||||
|
g_object_notify_queue_thaw (object, nqueue);
|
||||||
|
|
||||||
g_object_unref (object);
|
g_object_unref (object);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -155,13 +155,6 @@ g_object_notify_queue_add (GObject *object,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline GObjectNotifyQueue*
|
|
||||||
g_object_notify_queue_from_object (GObject *object,
|
|
||||||
GObjectNotifyContext *context)
|
|
||||||
{
|
|
||||||
return g_datalist_id_get_data (&object->qdata, context->quark_notify_queue);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user