diff options
| author | Michael Biebl <biebl@debian.org> | 2013-02-20 23:06:55 +0100 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2013-02-20 23:06:55 +0100 |
| commit | 6bb18bdca6b7bf811bdd00dbea1b09f3a367d2dc (patch) | |
| tree | 8fec068abdd1bc1ade3839f599e1c18d6c524a6a /src/nm-activation-request.c | |
| parent | fdcb282bbb150da0049cf2dd5b54e56eb3d0b55f (diff) | |
| parent | 8d275584fc94f398f0a7c990dcd057533d9a5856 (diff) | |
Merge tag 'upstream/0.9.8.0' into experimental
Upstream version 0.9.8.0
Diffstat (limited to 'src/nm-activation-request.c')
| -rw-r--r-- | src/nm-activation-request.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/nm-activation-request.c b/src/nm-activation-request.c index 88504ce0..76949cf2 100644 --- a/src/nm-activation-request.c +++ b/src/nm-activation-request.c @@ -297,6 +297,7 @@ nm_act_request_add_share_rule (NMActRequest *req, static void device_state_changed (NMDevice *device, GParamSpec *pspec, NMActRequest *self) { + NMActRequestPrivate *priv = NM_ACT_REQUEST_GET_PRIVATE (self); NMActiveConnectionState ac_state = NM_ACTIVE_CONNECTION_STATE_UNKNOWN; /* Set NMActiveConnection state based on the device's state */ @@ -318,6 +319,13 @@ device_state_changed (NMDevice *device, GParamSpec *pspec, NMActRequest *self) case NM_DEVICE_STATE_FAILED: case NM_DEVICE_STATE_DISCONNECTED: ac_state = NM_ACTIVE_CONNECTION_STATE_DEACTIVATED; + + /* No longer need to pay attention to device state */ + if (priv->device && priv->device_state_id) { + g_signal_handler_disconnect (priv->device, priv->device_state_id); + priv->device_state_id = 0; + } + g_clear_object (&priv->device); break; default: break; |