Merge "Synchronized WifiTracker scan result cache update logic" into qt-dev
diff --git a/packages/SettingsLib/src/com/android/settingslib/wifi/WifiTracker.java b/packages/SettingsLib/src/com/android/settingslib/wifi/WifiTracker.java
index 49c8ce3..3e359d2 100644
--- a/packages/SettingsLib/src/com/android/settingslib/wifi/WifiTracker.java
+++ b/packages/SettingsLib/src/com/android/settingslib/wifi/WifiTracker.java
@@ -555,8 +555,6 @@
configsByKey.put(AccessPoint.getKey(config), config);
}
}
- ArrayMap<String, List<ScanResult>> scanResultsByApKey =
- updateScanResultCache(newScanResults);
WifiConfiguration connectionConfig = null;
if (mLastInfo != null) {
@@ -566,6 +564,9 @@
// Rather than dropping and reacquiring the lock multiple times in this method, we lock
// once for efficiency of lock acquisition time and readability
synchronized (mLock) {
+ ArrayMap<String, List<ScanResult>> scanResultsByApKey =
+ updateScanResultCache(newScanResults);
+
// Swap the current access points into a cached list for maintaining AP listeners
List<AccessPoint> cachedAccessPoints;
cachedAccessPoints = new ArrayList<>(mInternalAccessPoints);