From f1444bbabea6a8c5241428e5f966ab1c4bf6f3fe Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Fri, 20 Nov 2009 09:11:46 -0800 Subject: [PATCH] wifi: ensure wifi devices are enabled on wakeup if not rfkilled Since rfkill state is saved but not acted upon during sleep (since NM shouldn't be touching devices while sleeping) we have to remember to act on the new state when waking up. --- src/nm-manager.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/nm-manager.c b/src/nm-manager.c index d13d674cca..c8a4e155b0 100644 --- a/src/nm-manager.c +++ b/src/nm-manager.c @@ -2499,6 +2499,13 @@ impl_manager_sleep (NMManager *self, gboolean sleep, GError **error) /* Re-manage managed devices */ for (iter = priv->devices; iter; iter = iter->next) { NMDevice *device = NM_DEVICE (iter->data); + gboolean wifi_enabled = (priv->wireless_hw_enabled && priv->wireless_enabled); + + /* enable/disable wireless devices since that we don't respond + * to killswitch changes during sleep. + */ + if (NM_IS_DEVICE_WIFI (iter->data)) + nm_device_wifi_set_enabled (NM_DEVICE_WIFI (iter->data), wifi_enabled); nm_device_clear_autoconnect_inhibit (device); if (nm_device_interface_spec_match_list (NM_DEVICE_INTERFACE (device), unmanaged_specs))