wifi: Update the AccessPointState network ID after saving configuration.
If there are more than 10 open access points, the network ID may have changed
after the configuration is saved.
Signed-off-by: Mike Lockwood <lockwood@android.com>
diff --git a/src/com/android/settings/wifi/WifiLayer.java b/src/com/android/settings/wifi/WifiLayer.java
index f275237..5d896aa 100644
--- a/src/com/android/settings/wifi/WifiLayer.java
+++ b/src/com/android/settings/wifi/WifiLayer.java
@@ -423,6 +423,17 @@
}
/*
+ * It's necessary to update the network id of this state because the network id
+ * could have changed after the configuration is saved. For example, if there are
+ * more than 10 saved open-networks, some older open-networks will have been be forgotten.
+ */
+ state.setNetworkId(AccessPointState.NETWORK_ID_ANY);
+ config = findConfiguredNetwork(state);
+ if (config != null) {
+ state.setNetworkId(config.networkId);
+ }
+
+ /*
* We could reload the configured networks, but instead just shortcut
* and add this state to our list in memory
*/