From 6473b0868cc4e880bdf81afca68457847168d9d1 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Fri, 9 Feb 2018 21:34:20 +0100 Subject: [PATCH] wifi/iwd: make NMIwdManager:dispose() reentrant Theoretically, dispose() could be called multiple times. --- src/devices/wifi/nm-iwd-manager.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/devices/wifi/nm-iwd-manager.c b/src/devices/wifi/nm-iwd-manager.c index 2010021b17..21f0a75559 100644 --- a/src/devices/wifi/nm-iwd-manager.c +++ b/src/devices/wifi/nm-iwd-manager.c @@ -687,8 +687,10 @@ dispose (GObject *object) g_slist_free_full (priv->known_networks, (GDestroyNotify) known_network_free); priv->known_networks = NULL; - g_signal_handlers_disconnect_by_data (priv->nm_manager, self); - g_clear_object (&priv->nm_manager); + if (priv->nm_manager) { + g_signal_handlers_disconnect_by_data (priv->nm_manager, self); + g_clear_object (&priv->nm_manager); + } G_OBJECT_CLASS (nm_iwd_manager_parent_class)->dispose (object); }