From 73e2ea97e43c7d56568a3acea4197b59e9f9c5a6 Mon Sep 17 00:00:00 2001 From: Roshan Pius Date: Mon, 17 Oct 2016 09:06:37 -0700 Subject: WifiConfigManager: Ignore invalid network id in user selected network Look up the user selected network configuration only if the |mLastSelectedNetworkID| != INVALID_NETWORK_ID. While there, Don't perform map lookup for network ID == -1. Bug: 32156160 Test: Unit test Change-Id: I9e6e06a57a01dc0ad6774680e2ec025b8e9d8ec5 --- service/java/com/android/server/wifi/WifiConfigManager.java | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'service') diff --git a/service/java/com/android/server/wifi/WifiConfigManager.java b/service/java/com/android/server/wifi/WifiConfigManager.java index 7fe084dca..d3df3e0af 100644 --- a/service/java/com/android/server/wifi/WifiConfigManager.java +++ b/service/java/com/android/server/wifi/WifiConfigManager.java @@ -513,6 +513,10 @@ public class WifiConfigManager { * provided network ID in our database. */ private WifiConfiguration getInternalConfiguredNetwork(int networkId) { + if (networkId == WifiConfiguration.INVALID_NETWORK_ID) { + Log.e(TAG, "Looking up network with invalid networkId -1"); + return null; + } WifiConfiguration internalConfig = mConfiguredNetworks.getForCurrentUser(networkId); if (internalConfig == null) { Log.e(TAG, "Cannot find network with networkId " + networkId); @@ -1682,6 +1686,9 @@ public class WifiConfigManager { * @return network Id corresponding to the last selected network. */ public String getLastSelectedNetworkConfigKey() { + if (mLastSelectedNetworkId == WifiConfiguration.INVALID_NETWORK_ID) { + return ""; + } WifiConfiguration config = getInternalConfiguredNetwork(mLastSelectedNetworkId); if (config == null) { return ""; -- cgit v1.2.3