From c572831b2148a71b3345e81374e2e1c7b411e170 Mon Sep 17 00:00:00 2001 From: Alexander Larsson Date: Thu, 7 Dec 2017 15:51:28 +0100 Subject: [PATCH] Add g_autoptr(BuilderObjectList) support This is a deeply freed GList of GObjects. Closes: #77 Approved by: alexlarsson --- src/builder-flatpak-utils.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/builder-flatpak-utils.h b/src/builder-flatpak-utils.h index 1b6dcde0..b1d5d87f 100644 --- a/src/builder-flatpak-utils.h +++ b/src/builder-flatpak-utils.h @@ -276,6 +276,16 @@ flatpak_temp_dir_destroy (void *p) typedef GFile FlatpakTempDir; G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakTempDir, flatpak_temp_dir_destroy) +static inline void +builder_object_list_destroy (void *p) +{ + GList *list = p; + + g_list_free_full (list, g_object_unref); +} + +typedef GList BuilderObjectList; +G_DEFINE_AUTOPTR_CLEANUP_FUNC (BuilderObjectList, builder_object_list_destroy) #define AUTOLOCK(name) G_GNUC_UNUSED __attribute__((cleanup (flatpak_auto_unlock_helper))) GMutex * G_PASTE (auto_unlock, __LINE__) = flatpak_auto_lock_helper (&G_LOCK_NAME (name))