From 1273fbbc5eeb58d63908ff3bb5477ed3e9a11d20 Mon Sep 17 00:00:00 2001 From: Fedor Kudasov Date: Wed, 8 Dec 2021 21:01:58 +0000 Subject: [PATCH] Make filterUnreachableAPs null-safe Bug: 209459024 Test: m SystemUI-core Change-Id: Icb5714f1606d3b6198ffe16bdf2979883efacece --- .../com/android/systemui/qs/tiles/WifiTile.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/WifiTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/WifiTile.java index e79ca0c932127..e74a15aa3971a 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/WifiTile.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/WifiTile.java @@ -378,26 +378,26 @@ public class WifiTile extends QSTileImpl { @Override public void onAccessPointsChanged(final List accessPoints) { - mAccessPoints = accessPoints.toArray(new WifiEntry[accessPoints.size()]); - filterUnreachableAPs(); + mAccessPoints = filterUnreachableAPs(accessPoints); updateItems(); } /** Filter unreachable APs from mAccessPoints */ - private void filterUnreachableAPs() { + private WifiEntry[] filterUnreachableAPs(List unfiltered) { int numReachable = 0; - for (WifiEntry ap : mAccessPoints) { + for (WifiEntry ap : unfiltered) { if (isWifiEntryReachable(ap)) numReachable++; } - if (numReachable != mAccessPoints.length) { - WifiEntry[] unfiltered = mAccessPoints; - mAccessPoints = new WifiEntry[numReachable]; + if (numReachable != unfiltered.size()) { + WifiEntry[] accessPoints = new WifiEntry[numReachable]; int i = 0; for (WifiEntry ap : unfiltered) { - if (isWifiEntryReachable(ap)) mAccessPoints[i++] = ap; + if (isWifiEntryReachable(ap)) accessPoints[i++] = ap; } + return accessPoints; } + return unfiltered.toArray(new WifiEntry[0]); } @Override