diff -Naur network-manager-0.7.1~rc4.1.cf199a964.orig/src/nm-device-wifi.c network-manager-0.7.1~rc4.1.cf199a964/src/nm-device-wifi.c
--- network-manager-0.7.1~rc4.1.cf199a964.orig/src/nm-device-wifi.c	2009-07-19 00:40:33.816821752 -0300
+++ network-manager-0.7.1~rc4.1.cf199a964/src/nm-device-wifi.c	2009-07-19 00:42:36.927578594 -0300
@@ -1783,9 +1783,12 @@
 	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 (can_scan (self)) {
-		if (nm_supplicant_interface_request_scan (priv->supplicant.iface)) {
+		if ((state == NM_DEVICE_STATE_ACTIVATED) || (nm_supplicant_interface_request_scan (priv->supplicant.iface))) {
 			/* success */
 			backoff = TRUE;
 		}
