From e5e0fa566b503028d645e48f2ff3abac165f91d0 Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Tue, 10 Mar 2015 08:36:34 -0500 Subject: [PATCH] supplicant: disconnect properties handler on dispose The supplicant interface's proxy may outlive the interface object itself, so we must ensure that all signal handlers are disconnected. Fixes a crash on suspend/resume. Fixes: 59c8192b22778ad4e025db7e60828ac8ccbcb070 --- src/supplicant-manager/nm-supplicant-interface.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/supplicant-manager/nm-supplicant-interface.c b/src/supplicant-manager/nm-supplicant-interface.c index 71651112e6..e9775a199c 100644 --- a/src/supplicant-manager/nm-supplicant-interface.c +++ b/src/supplicant-manager/nm-supplicant-interface.c @@ -1285,6 +1285,8 @@ dispose (GObject *object) { NMSupplicantInterfacePrivate *priv = NM_SUPPLICANT_INTERFACE_GET_PRIVATE (object); + if (priv->iface_proxy) + g_signal_handlers_disconnect_by_data (priv->iface_proxy, NM_SUPPLICANT_INTERFACE (object)); g_clear_object (&priv->iface_proxy); if (priv->init_cancellable)