diff options
Diffstat (limited to 'libnm/nm-client.c')
-rw-r--r-- | libnm/nm-client.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libnm/nm-client.c b/libnm/nm-client.c index f6a2256709..4e4f194f5c 100644 --- a/libnm/nm-client.c +++ b/libnm/nm-client.c @@ -1825,8 +1825,14 @@ dispose (GObject *object) { NMClientPrivate *priv = NM_CLIENT_GET_PRIVATE (object); - g_clear_object (&priv->manager); - g_clear_object (&priv->settings); + if (priv->manager) { + g_signal_handlers_disconnect_by_data (priv->manager, object); + g_clear_object (&priv->manager); + } + if (priv->settings) { + g_signal_handlers_disconnect_by_data (priv->settings, object); + g_clear_object (&priv->settings); + } G_OBJECT_CLASS (nm_client_parent_class)->dispose (object); } |