From 1ed7a0200ac705b20f71193030a59edd8361200b Mon Sep 17 00:00:00 2001 From: Vinit Deshapnde Date: Thu, 5 Sep 2013 14:19:38 -0700 Subject: Fix duplicate SSID entries in the WifiSettings UI The root cause is likely our 'no networks' problem; it caused people to add new (and duplicate) entries to their list of networks; which are haunting us now. This change looks up the dupes, and discards them, even if they came wifi supplicant. Bug: 10633813 Change-Id: I656b6bf7240de6763bf84b5b406c50444af6dd48 --- wifi/java/android/net/wifi/WifiConfigStore.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'wifi') diff --git a/wifi/java/android/net/wifi/WifiConfigStore.java b/wifi/java/android/net/wifi/WifiConfigStore.java index 4baab1f..ea7904c 100644 --- a/wifi/java/android/net/wifi/WifiConfigStore.java +++ b/wifi/java/android/net/wifi/WifiConfigStore.java @@ -680,9 +680,15 @@ class WifiConfigStore { } config.ipAssignment = IpAssignment.DHCP; config.proxySettings = ProxySettings.NONE; - mConfiguredNetworks.put(config.networkId, config); - mNetworkIds.put(configKey(config), config.networkId); - localLog("loaded configured network", config.networkId); + + if (mNetworkIds.containsKey(configKey(config))) { + // That SSID is already known, just ignore this duplicate entry + localLog("discarded duplicate network", config.networkId); + } else { + mConfiguredNetworks.put(config.networkId, config); + mNetworkIds.put(configKey(config), config.networkId); + localLog("loaded configured network", config.networkId); + } } readIpAndProxyConfigurations(); -- cgit v1.1