From 8a11380e80e27139f5949bc1e8fbffbdab75003a Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Mon, 10 May 2021 20:43:51 +0200 Subject: [PATCH] glib-aux: add nm_auto_pop_and_unref_gmaincontext cleanup macro --- src/libnm-glib-aux/nm-shared-utils.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/libnm-glib-aux/nm-shared-utils.h b/src/libnm-glib-aux/nm-shared-utils.h index 4d0fa8522a..7bd3845a56 100644 --- a/src/libnm-glib-aux/nm-shared-utils.h +++ b/src/libnm-glib-aux/nm-shared-utils.h @@ -1564,6 +1564,18 @@ NM_AUTO_DEFINE_FCN0(GSource *, _nm_auto_destroy_and_unref_gsource, nm_g_source_d NM_AUTO_DEFINE_FCN0(GMainContext *, _nm_auto_pop_gmaincontext, g_main_context_pop_thread_default); #define nm_auto_pop_gmaincontext nm_auto(_nm_auto_pop_gmaincontext) +static inline void +nm_g_main_context_pop_and_unref(GMainContext *context) +{ + g_main_context_pop_thread_default(context); + g_main_context_unref(context); +} + +NM_AUTO_DEFINE_FCN0(GMainContext *, + _nm_auto_pop_and_unref_gmaincontext, + nm_g_main_context_pop_and_unref); +#define nm_auto_pop_and_unref_gmaincontext nm_auto(_nm_auto_pop_and_unref_gmaincontext) + static inline gboolean nm_source_func_unref_gobject(gpointer user_data) {