summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Winship <danw@gnome.org>2014-11-07 17:00:39 -0500
committerDan Winship <danw@gnome.org>2014-11-07 17:00:39 -0500
commita1a338f9b0a8f70729cab8e5394ec563963ba11a (patch)
treecbccec34c2e94850c4ceb66909c27e0ad5ecb68d
parenta5eb556d8cbde3414075aa1fe981e897d7441b3e (diff)
downloadNetworkManager-a1a338f9b0a8f70729cab8e5394ec563963ba11a.tar.gz
libnm: fix a crash after unreffing NMClient
Make NMClient disconnect from the NMManager and NMRemoteSettings signals when disposing, in case they outlive the NMClient (which shouldn't happen, but...)
-rw-r--r--libnm/nm-client.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libnm/nm-client.c b/libnm/nm-client.c
index f6a2256709..b84fce5f95 100644
--- a/libnm/nm-client.c
+++ b/libnm/nm-client.c
@@ -1825,7 +1825,9 @@ dispose (GObject *object)
{
NMClientPrivate *priv = NM_CLIENT_GET_PRIVATE (object);
+ g_signal_handlers_disconnect_by_data (priv->manager, object);
g_clear_object (&priv->manager);
+ g_signal_handlers_disconnect_by_data (priv->settings, object);
g_clear_object (&priv->settings);
G_OBJECT_CLASS (nm_client_parent_class)->dispose (object);