summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2015-10-01 16:41:09 +0200
committerThomas Haller <thaller@redhat.com>2015-10-02 16:42:44 +0200
commitc98c7a486ce69a6c53ded1ab7a0908f1dd1f3120 (patch)
tree539e2ee9d4630a8f23432574220f2b38270656c8
parent6f9a7a8daa4a945410636c1bc90bf3b6ad14d738 (diff)
downloadNetworkManager-c98c7a486ce69a6c53ded1ab7a0908f1dd1f3120.tar.gz
macros: add nm_clear_g_signal_handler() helper
-rw-r--r--include/nm-macros-internal.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/nm-macros-internal.h b/include/nm-macros-internal.h
index 7ae08bf727..4ee5499f22 100644
--- a/include/nm-macros-internal.h
+++ b/include/nm-macros-internal.h
@@ -198,6 +198,19 @@ nm_clear_g_source (guint *id)
return FALSE;
}
+static inline gboolean
+nm_clear_g_signal_handler (gpointer self, guint *id)
+{
+ g_return_val_if_fail (G_IS_OBJECT (self), FALSE);
+
+ if (id && *id) {
+ g_signal_handler_disconnect (self, *id);
+ *id = 0;
+ return TRUE;
+ }
+ return FALSE;
+}
+
/*****************************************************************************/
/* Determine whether @x is a power of two (@x being an integer type).