From 62b25d72f056354ae0cf5b6abc88c7307dc6d7d4 Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Tue, 22 Apr 2008 19:07:00 +0000 Subject: [PATCH] Clarify comments and clean up some code git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3588 4912f4e0-d625-0410-9fb7-b9a5a253dbdc --- src/nm-device.c | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/src/nm-device.c b/src/nm-device.c index 5b76f6d97f..4146a0685d 100644 --- a/src/nm-device.c +++ b/src/nm-device.c @@ -1717,7 +1717,8 @@ nm_device_state_changed (NMDevice *device, NMDeviceState state) case NM_DEVICE_STATE_UNAVAILABLE: if (old_state == NM_DEVICE_STATE_UNMANAGED) nm_device_bring_up (device, TRUE); - /* Fall through */ + /* Fall through, so when the device needs to be deactivated due to + * eg carrier changes we actually deactivate it */ case NM_DEVICE_STATE_DISCONNECTED: if (old_state != NM_DEVICE_STATE_UNAVAILABLE) nm_device_interface_deactivate (NM_DEVICE_INTERFACE (device)); @@ -1766,19 +1767,20 @@ nm_device_set_managed (NMDevice *device, gboolean managed) g_return_if_fail (NM_IS_DEVICE (device)); priv = NM_DEVICE_GET_PRIVATE (device); - if (priv->managed != managed) { - priv->managed = managed; - nm_info ("(%s): now %s", nm_device_get_iface (device), managed ? "managed" : "unmanaged"); + if (priv->managed == managed) + return; - if (priv->start_timer) { - g_source_remove (priv->start_timer); - priv->start_timer = 0; - } + priv->managed = managed; + nm_info ("(%s): now %s", nm_device_get_iface (device), managed ? "managed" : "unmanaged"); - g_object_notify (G_OBJECT (device), NM_DEVICE_INTERFACE_MANAGED); - - /* If now managed, jump to unavailable */ - nm_device_state_changed (device, managed ? NM_DEVICE_STATE_UNAVAILABLE : NM_DEVICE_STATE_UNMANAGED); + if (priv->start_timer) { + g_source_remove (priv->start_timer); + priv->start_timer = 0; } + + g_object_notify (G_OBJECT (device), NM_DEVICE_INTERFACE_MANAGED); + + /* If now managed, jump to unavailable */ + nm_device_state_changed (device, managed ? NM_DEVICE_STATE_UNAVAILABLE : NM_DEVICE_STATE_UNMANAGED); }