summaryrefslogtreecommitdiffstats
path: root/wifi
diff options
context:
space:
mode:
authorIrfan Sheriff <isheriff@google.com>2010-12-01 13:59:04 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2010-12-01 13:59:04 -0800
commitd50ce4d7ac0e2ec49eda45396f0bbb5e07fa55da (patch)
treeea386753142ffa9dfa81cb602b73480bcc43d34b /wifi
parent0d28be68126e60fc0e8b0e3967f88177352d99f5 (diff)
parentf36bde828c0e427c0dbbe543b2465114c9aff45c (diff)
downloadframeworks_base-d50ce4d7ac0e2ec49eda45396f0bbb5e07fa55da.zip
frameworks_base-d50ce4d7ac0e2ec49eda45396f0bbb5e07fa55da.tar.gz
frameworks_base-d50ce4d7ac0e2ec49eda45396f0bbb5e07fa55da.tar.bz2
am f36bde82: DO NOT MERGE Dont let supplicant stay in DORMANT state
* commit 'f36bde828c0e427c0dbbe543b2465114c9aff45c': DO NOT MERGE Dont let supplicant stay in DORMANT state
Diffstat (limited to 'wifi')
-rw-r--r--wifi/java/android/net/wifi/WifiStateTracker.java17
1 files changed, 11 insertions, 6 deletions
diff --git a/wifi/java/android/net/wifi/WifiStateTracker.java b/wifi/java/android/net/wifi/WifiStateTracker.java
index a1b5540..b59279f 100644
--- a/wifi/java/android/net/wifi/WifiStateTracker.java
+++ b/wifi/java/android/net/wifi/WifiStateTracker.java
@@ -1039,13 +1039,18 @@ public class WifiStateTracker extends NetworkStateTracker {
}
handleDisconnectedState(newDetailedState, true);
/**
- * If we were associated with a network (networkId != -1),
- * assume we reached this state because of a failed attempt
- * to acquire an IP address, and attempt another connection
- * and IP address acquisition in RECONNECT_DELAY_MSECS
- * milliseconds.
+ * We should never let the supplicant stay in DORMANT state
+ * as long as we are in connect mode and driver is started
+ *
+ * We should normally hit a DORMANT state due to a disconnect
+ * issued after an IP configuration failure. We issue a reconnect
+ * after RECONNECT_DELAY_MSECS in such a case.
+ *
+ * After multiple failures, the network gets disabled and the
+ * supplicant should reach an INACTIVE state.
+ *
*/
- if (mRunState == RUN_STATE_RUNNING && !mIsScanOnly && networkId != -1) {
+ if (mRunState == RUN_STATE_RUNNING && !mIsScanOnly) {
sendMessageDelayed(reconnectMsg, RECONNECT_DELAY_MSECS);
} else if (mRunState == RUN_STATE_STOPPING) {
stopDriver();