vpn: disconnect signal handlers from proxy in NMVpnConnection::dispose()

We cannot be sure who holds a reference to the proxy, and
who is gonna call us back after the VPN connection instance
is destroyed.

(cherry picked from commit 6ebb9091d2)
(cherry picked from commit f71f9b54a8)
(cherry picked from commit 6c1cbe4d61)
This commit is contained in:
Thomas Haller 2018-09-14 14:11:48 +02:00
parent 6fd26b6a46
commit f4af4e1d5a

View file

@ -2769,6 +2769,9 @@ dispose (GObject *object)
NMVpnConnection *self = NM_VPN_CONNECTION (object);
NMVpnConnectionPrivate *priv = NM_VPN_CONNECTION_GET_PRIVATE (self);
if (priv->proxy)
g_signal_handlers_disconnect_by_data (priv->proxy, self);
nm_clear_g_source (&priv->start_timeout);
g_clear_pointer (&priv->connect_hash, g_variant_unref);