diff options
author | Philip Withnall <philip@tecnocode.co.uk> | 2022-12-06 09:04:03 +0000 |
---|---|---|
committer | Philip Withnall <philip@tecnocode.co.uk> | 2022-12-06 09:04:03 +0000 |
commit | 720a1147a61e054b4737f0dbba417240e9c964a6 (patch) | |
tree | fee8b5f7b123282a6c95a2b72224e199a9654234 /gobject | |
parent | 6599cf95aebc88b0c0bfab38db371622fb50548d (diff) | |
parent | 30e1d69de761d5c63d92718a9704e9e60eba20cf (diff) | |
download | glib-720a1147a61e054b4737f0dbba417240e9c964a6.tar.gz |
Merge branch 'object-refcount-checks' into 'main'
gobject: Check for valid ref counting via g_return_if_fail
See merge request GNOME/glib!3106
Diffstat (limited to 'gobject')
-rw-r--r-- | gobject/gobject.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/gobject/gobject.c b/gobject/gobject.c index c1a69a896..788bb0be2 100644 --- a/gobject/gobject.c +++ b/gobject/gobject.c @@ -1468,9 +1468,7 @@ void g_object_freeze_notify (GObject *object) { g_return_if_fail (G_IS_OBJECT (object)); - - if (g_atomic_int_get (&object->ref_count) == 0) - return; + g_return_if_fail (g_atomic_int_get (&object->ref_count) > 0); g_object_ref (object); g_object_notify_queue_freeze (object, FALSE); @@ -1670,9 +1668,8 @@ g_object_thaw_notify (GObject *object) GObjectNotifyQueue *nqueue; g_return_if_fail (G_IS_OBJECT (object)); - if (g_atomic_int_get (&object->ref_count) == 0) - return; - + g_return_if_fail (g_atomic_int_get (&object->ref_count) > 0); + g_object_ref (object); /* FIXME: Freezing is the only way to get at the notify queue. |