From a05e4583af6d43f5d19fd6f508501bc43ccfcd5b Mon Sep 17 00:00:00 2001 From: Robert Greenwalt Date: Thu, 4 Apr 2013 15:51:08 -0700 Subject: [PATCH] Disconnect from AP when teardown requested. We can leave the driver running if it can't handle quick start/stop cycles, but we must disconnect when requested. Bug:8549078 Change-Id: Id2e930fb48ca78bb459b775cba7e9aa31a6c9941 --- wifi/java/android/net/wifi/WifiStateMachine.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/wifi/java/android/net/wifi/WifiStateMachine.java b/wifi/java/android/net/wifi/WifiStateMachine.java index 04e7095cc6dfc..a5d98cc1f4d4c 100644 --- a/wifi/java/android/net/wifi/WifiStateMachine.java +++ b/wifi/java/android/net/wifi/WifiStateMachine.java @@ -2442,6 +2442,9 @@ public class WifiStateMachine extends StateMachine { if (DBG) log("Already in delayed stop"); break; } + /* disconnect right now, but leave the driver running for a bit */ + mWifiConfigStore.disableAllNetworks(); + mInDelayedStop = true; mDelayedStopCounter++; if (DBG) log("Delayed stop message " + mDelayedStopCounter); @@ -2462,6 +2465,9 @@ public class WifiStateMachine extends StateMachine { mDelayedStopCounter++; mAlarmManager.cancel(mDriverStopIntent); if (DBG) log("Delayed stop ignored due to start"); + if (mOperationalMode == CONNECT_MODE) { + mWifiConfigStore.enableAllNetworks(); + } } break; case CMD_DELAYED_STOP_DRIVER: