mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-25 15:06:14 +01:00
gobject: Convert a debug check from an assertion to a g_critical()
An assertion is harder to skip over, and using a g_critical() can give us a more informative error message. Signed-off-by: Philip Withnall <withnall@endlessm.com> https://gitlab.gnome.org/GNOME/glib/issues/179
This commit is contained in:
parent
d3928abe45
commit
b9a8c03915
@ -3349,10 +3349,16 @@ g_object_unref (gpointer _object)
|
|||||||
|
|
||||||
GOBJECT_IF_DEBUG (OBJECTS,
|
GOBJECT_IF_DEBUG (OBJECTS,
|
||||||
{
|
{
|
||||||
/* catch objects not chaining finalize handlers */
|
gboolean was_present;
|
||||||
G_LOCK (debug_objects);
|
|
||||||
g_assert (!g_hash_table_contains (debug_objects_ht, object));
|
/* catch objects not chaining finalize handlers */
|
||||||
G_UNLOCK (debug_objects);
|
G_LOCK (debug_objects);
|
||||||
|
was_present = g_hash_table_remove (debug_objects_ht, object);
|
||||||
|
G_UNLOCK (debug_objects);
|
||||||
|
|
||||||
|
if (was_present)
|
||||||
|
g_critical ("Object %p of type %s not finalized correctly.",
|
||||||
|
object, G_OBJECT_TYPE_NAME (object));
|
||||||
});
|
});
|
||||||
g_type_free_instance ((GTypeInstance*) object);
|
g_type_free_instance ((GTypeInstance*) object);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user