diff options
author | Aswin Sankar <apsankar@google.com> | 2023-06-30 11:31:18 -0700 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-07-05 23:27:59 +0000 |
commit | 73102851e6c914ebd25ea5900c59e4cfb4832be5 (patch) | |
tree | cd1307fa58b8f58ed944e68eccffbd8e63dc6225 | |
parent | 0cfafb7fd062842122c7f8ab15e4d169e57bd8ff (diff) | |
download | Iwlan-73102851e6c914ebd25ea5900c59e4cfb4832be5.tar.gz |
Avoid NPE for null static LinkProperties object
- LinkProperties can be null at onCapabilitiesChanged().
- Reverse equality check to access @NonNull variable first.
- Update static variable 'sNetworkConnected' to fix flaky test.
Fix: 288475484, 287627889
Test: IwlanDataServiceTest, Live regression test.
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:d3d87114e767f9aa5b0b48c17c5d598ff0b76cd9)
Merged-In: I5f4e79099ebc8f688bcb19fbb540ca5e50704c2f
Change-Id: I5f4e79099ebc8f688bcb19fbb540ca5e50704c2f
-rw-r--r-- | src/com/google/android/iwlan/IwlanDataService.java | 4 | ||||
-rw-r--r-- | test/com/google/android/iwlan/IwlanDataServiceTest.java | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/src/com/google/android/iwlan/IwlanDataService.java b/src/com/google/android/iwlan/IwlanDataService.java index 0d564ab..04b6789 100644 --- a/src/com/google/android/iwlan/IwlanDataService.java +++ b/src/com/google/android/iwlan/IwlanDataService.java @@ -165,12 +165,12 @@ public class IwlanDataService extends DataService { @NonNull Network network, @NonNull LinkProperties linkProperties) { Log.d(TAG, "onLinkPropertiesChanged: " + linkProperties); - if (!sNetwork.equals(network)) { + if (!network.equals(sNetwork)) { Log.d(TAG, "Ignore LinkProperties changes for unused Network."); return; } - if (!sLinkProperties.equals(linkProperties)) { + if (!linkProperties.equals(sLinkProperties)) { for (IwlanDataServiceProvider dp : sIwlanDataServiceProviders.values()) { dp.dnsPrefetchCheck(); sLinkProperties = linkProperties; diff --git a/test/com/google/android/iwlan/IwlanDataServiceTest.java b/test/com/google/android/iwlan/IwlanDataServiceTest.java index c4549df..2f8f2c3 100644 --- a/test/com/google/android/iwlan/IwlanDataServiceTest.java +++ b/test/com/google/android/iwlan/IwlanDataServiceTest.java @@ -538,6 +538,8 @@ public class IwlanDataServiceTest { @Test public void testOnCrossSimCallingEnable_doNotUpdateTunnelManagerIfNoNetwork() throws Exception { when(mMockImsMmTelManager.isCrossSimCallingEnabled()).thenReturn(true); + onSystemDefaultNetworkLost(); + mIwlanDataService .mIwlanDataServiceHandler .obtainMessage( |