diff --git a/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java b/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java index 5a178a50408b5..eb513e1702862 100644 --- a/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java +++ b/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java @@ -998,7 +998,8 @@ public class AccessPoint implements Comparable { if (mRssi != info.getRssi()) { mRssi = info.getRssi(); updated = true; - } else if (mNetworkInfo.getDetailedState() != networkInfo.getDetailedState()) { + } else if (mNetworkInfo != null && networkInfo != null + && mNetworkInfo.getDetailedState() != networkInfo.getDetailedState()) { updated = true; } mInfo = info; diff --git a/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java b/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java index f519a906eab5d..d4ce40c7c0a85 100644 --- a/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java +++ b/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java @@ -465,9 +465,9 @@ public class WifiTrackerTest { private void updateScoresAndWaitForAccessPointsChangedCallback() throws InterruptedException { // Updating scores can happen together or one after the other, so the latch countdown is set // to 2. - mAccessPointsChangedLatch = new CountDownLatch(3); + mAccessPointsChangedLatch = new CountDownLatch(2); updateScores(); - assertTrue("onAccessPointChanged was not called three times", + assertTrue("onAccessPointChanged was not called twice", mAccessPointsChangedLatch.await(LATCH_TIMEOUT, TimeUnit.MILLISECONDS)); }