Loading wifi/java/android/net/wifi/WifiStateMachine.java +30 −3 Original line number Original line Diff line number Diff line Loading @@ -229,6 +229,7 @@ public class WifiStateMachine extends StateMachine { private NetworkInfo mNetworkInfo; private NetworkInfo mNetworkInfo; private SupplicantStateTracker mSupplicantStateTracker; private SupplicantStateTracker mSupplicantStateTracker; private DhcpStateMachine mDhcpStateMachine; private DhcpStateMachine mDhcpStateMachine; private boolean mDhcpActive = false; private class InterfaceObserver extends BaseNetworkObserver { private class InterfaceObserver extends BaseNetworkObserver { private WifiStateMachine mWifiStateMachine; private WifiStateMachine mWifiStateMachine; Loading Loading @@ -849,6 +850,11 @@ public class WifiStateMachine extends StateMachine { } } private void startBatchedScan() { private void startBatchedScan() { if (mDhcpActive) { if (DBG) log("not starting Batched Scans due to DHCP"); return; } // first grab any existing data // first grab any existing data retrieveBatchedScanData(); retrieveBatchedScanData(); Loading Loading @@ -916,9 +922,11 @@ public class WifiStateMachine extends StateMachine { private void stopBatchedScan() { private void stopBatchedScan() { mAlarmManager.cancel(mBatchedScanIntervalIntent); mAlarmManager.cancel(mBatchedScanIntervalIntent); if (mBatchedScanSettings != null) { retrieveBatchedScanData(); retrieveBatchedScanData(); mWifiNative.setBatchedScanSettings(null); mWifiNative.setBatchedScanSettings(null); } } } private void setNextBatchedAlarm(int scansExpected) { private void setNextBatchedAlarm(int scansExpected) { Loading Loading @@ -2203,6 +2211,7 @@ public class WifiStateMachine extends StateMachine { } } void handlePreDhcpSetup() { void handlePreDhcpSetup() { mDhcpActive = true; if (!mBluetoothConnectionActive) { if (!mBluetoothConnectionActive) { /* /* * There are problems setting the Wi-Fi driver's power * There are problems setting the Wi-Fi driver's power Loading Loading @@ -2232,6 +2241,8 @@ public class WifiStateMachine extends StateMachine { setSuspendOptimizationsNative(SUSPEND_DUE_TO_DHCP, false); setSuspendOptimizationsNative(SUSPEND_DUE_TO_DHCP, false); mWifiNative.setPowerSave(false); mWifiNative.setPowerSave(false); stopBatchedScan(); /* P2p discovery breaks dhcp, shut it down in order to get through this */ /* P2p discovery breaks dhcp, shut it down in order to get through this */ Message msg = new Message(); Message msg = new Message(); msg.what = WifiP2pService.BLOCK_DISCOVERY; msg.what = WifiP2pService.BLOCK_DISCOVERY; Loading Loading @@ -2270,6 +2281,12 @@ public class WifiStateMachine extends StateMachine { // Set the coexistence mode back to its default value // Set the coexistence mode back to its default value mWifiNative.setBluetoothCoexistenceMode( mWifiNative.setBluetoothCoexistenceMode( mWifiNative.BLUETOOTH_COEXISTENCE_MODE_SENSE); mWifiNative.BLUETOOTH_COEXISTENCE_MODE_SENSE); mDhcpActive = false; if (mBatchedScanSettings != null) { startBatchedScan(); } } } private void handleSuccessfulIpConfiguration(DhcpResults dhcpResults) { private void handleSuccessfulIpConfiguration(DhcpResults dhcpResults) { Loading Loading @@ -2917,6 +2934,8 @@ public class WifiStateMachine extends StateMachine { mWifiNative.stopFilteringMulticastV4Packets(); mWifiNative.stopFilteringMulticastV4Packets(); } } mDhcpActive = false; if (mBatchedScanSettings != null) { if (mBatchedScanSettings != null) { startBatchedScan(); startBatchedScan(); } } Loading Loading @@ -3485,6 +3504,14 @@ public class WifiStateMachine extends StateMachine { } } } } @Override public void exit() { // if we're leaving before this is done, cleanup if (mDhcpActive) { handlePostDhcpSetup(); } } @Override @Override public boolean processMessage(Message message) { public boolean processMessage(Message message) { switch (message.what) { switch (message.what) { Loading Loading @@ -3677,7 +3704,7 @@ public class WifiStateMachine extends StateMachine { transitionTo(mCaptivePortalCheckState); transitionTo(mCaptivePortalCheckState); break; break; default: default: log(getName() + " what=" + message.what + " NOT_HANDLED"); if (DBG) log(getName() + " what=" + message.what + " NOT_HANDLED"); return NOT_HANDLED; return NOT_HANDLED; } } return HANDLED; return HANDLED; Loading Loading
wifi/java/android/net/wifi/WifiStateMachine.java +30 −3 Original line number Original line Diff line number Diff line Loading @@ -229,6 +229,7 @@ public class WifiStateMachine extends StateMachine { private NetworkInfo mNetworkInfo; private NetworkInfo mNetworkInfo; private SupplicantStateTracker mSupplicantStateTracker; private SupplicantStateTracker mSupplicantStateTracker; private DhcpStateMachine mDhcpStateMachine; private DhcpStateMachine mDhcpStateMachine; private boolean mDhcpActive = false; private class InterfaceObserver extends BaseNetworkObserver { private class InterfaceObserver extends BaseNetworkObserver { private WifiStateMachine mWifiStateMachine; private WifiStateMachine mWifiStateMachine; Loading Loading @@ -849,6 +850,11 @@ public class WifiStateMachine extends StateMachine { } } private void startBatchedScan() { private void startBatchedScan() { if (mDhcpActive) { if (DBG) log("not starting Batched Scans due to DHCP"); return; } // first grab any existing data // first grab any existing data retrieveBatchedScanData(); retrieveBatchedScanData(); Loading Loading @@ -916,9 +922,11 @@ public class WifiStateMachine extends StateMachine { private void stopBatchedScan() { private void stopBatchedScan() { mAlarmManager.cancel(mBatchedScanIntervalIntent); mAlarmManager.cancel(mBatchedScanIntervalIntent); if (mBatchedScanSettings != null) { retrieveBatchedScanData(); retrieveBatchedScanData(); mWifiNative.setBatchedScanSettings(null); mWifiNative.setBatchedScanSettings(null); } } } private void setNextBatchedAlarm(int scansExpected) { private void setNextBatchedAlarm(int scansExpected) { Loading Loading @@ -2203,6 +2211,7 @@ public class WifiStateMachine extends StateMachine { } } void handlePreDhcpSetup() { void handlePreDhcpSetup() { mDhcpActive = true; if (!mBluetoothConnectionActive) { if (!mBluetoothConnectionActive) { /* /* * There are problems setting the Wi-Fi driver's power * There are problems setting the Wi-Fi driver's power Loading Loading @@ -2232,6 +2241,8 @@ public class WifiStateMachine extends StateMachine { setSuspendOptimizationsNative(SUSPEND_DUE_TO_DHCP, false); setSuspendOptimizationsNative(SUSPEND_DUE_TO_DHCP, false); mWifiNative.setPowerSave(false); mWifiNative.setPowerSave(false); stopBatchedScan(); /* P2p discovery breaks dhcp, shut it down in order to get through this */ /* P2p discovery breaks dhcp, shut it down in order to get through this */ Message msg = new Message(); Message msg = new Message(); msg.what = WifiP2pService.BLOCK_DISCOVERY; msg.what = WifiP2pService.BLOCK_DISCOVERY; Loading Loading @@ -2270,6 +2281,12 @@ public class WifiStateMachine extends StateMachine { // Set the coexistence mode back to its default value // Set the coexistence mode back to its default value mWifiNative.setBluetoothCoexistenceMode( mWifiNative.setBluetoothCoexistenceMode( mWifiNative.BLUETOOTH_COEXISTENCE_MODE_SENSE); mWifiNative.BLUETOOTH_COEXISTENCE_MODE_SENSE); mDhcpActive = false; if (mBatchedScanSettings != null) { startBatchedScan(); } } } private void handleSuccessfulIpConfiguration(DhcpResults dhcpResults) { private void handleSuccessfulIpConfiguration(DhcpResults dhcpResults) { Loading Loading @@ -2917,6 +2934,8 @@ public class WifiStateMachine extends StateMachine { mWifiNative.stopFilteringMulticastV4Packets(); mWifiNative.stopFilteringMulticastV4Packets(); } } mDhcpActive = false; if (mBatchedScanSettings != null) { if (mBatchedScanSettings != null) { startBatchedScan(); startBatchedScan(); } } Loading Loading @@ -3485,6 +3504,14 @@ public class WifiStateMachine extends StateMachine { } } } } @Override public void exit() { // if we're leaving before this is done, cleanup if (mDhcpActive) { handlePostDhcpSetup(); } } @Override @Override public boolean processMessage(Message message) { public boolean processMessage(Message message) { switch (message.what) { switch (message.what) { Loading Loading @@ -3677,7 +3704,7 @@ public class WifiStateMachine extends StateMachine { transitionTo(mCaptivePortalCheckState); transitionTo(mCaptivePortalCheckState); break; break; default: default: log(getName() + " what=" + message.what + " NOT_HANDLED"); if (DBG) log(getName() + " what=" + message.what + " NOT_HANDLED"); return NOT_HANDLED; return NOT_HANDLED; } } return HANDLED; return HANDLED; Loading