diff -Naur NetworkManager-0.8/src/nm-device-wifi.c NetworkManager-0.8-dev/src/nm-device-wifi.c --- NetworkManager-0.8/src/nm-device-wifi.c 2010-02-18 10:47:45.000000000 -0500 +++ NetworkManager-0.8-dev/src/nm-device-wifi.c 2010-03-06 10:51:31.527438936 -0500 @@ -1789,11 +1789,16 @@ NMDeviceWifi *self = NM_DEVICE_WIFI (user_data); NMDeviceWifiPrivate *priv = NM_DEVICE_WIFI_GET_PRIVATE (self); gboolean backoff = FALSE; + NMDeviceState state; + + state = nm_device_get_state (NM_DEVICE (self)); if (check_scanning_allowed (self)) { if (nm_supplicant_interface_request_scan (priv->supplicant.iface)) { - /* success */ - backoff = TRUE; + if ((state == NM_DEVICE_STATE_ACTIVATED) || (nm_supplicant_interface_request_scan (priv->supplicant.iface))) { + /* success */ + backoff = TRUE; + } } }