diff options
| author | 2022-02-04 19:00:44 +0000 | |
|---|---|---|
| committer | 2022-02-04 21:17:09 +0000 | |
| commit | 2e7197c2ae0a5983e86d9dacb0ce5357c5873c3e (patch) | |
| tree | a3d700a575f5789f7bd84150139695e55772ee51 | |
| parent | 010aa30bc459f2f1df717b0c09928a0ce366193b (diff) | |
Fix possible NPE in DPMS.
If there's no ActiveAdmin for the given user then the ternary
expression would return null, which immediately will throw an NPE as it
gets auto-unboxed into from Boolean to boolean.
Bug: 217923092
Test: errorprone build
Change-Id: I4043f0061e5a23e4d5aa408917f6d51b8bbf22ec
| -rw-r--r-- | services/Android.bp | 1 | ||||
| -rw-r--r-- | services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/services/Android.bp b/services/Android.bp index c8b4969d285f..4623ff9efce8 100644 --- a/services/Android.bp +++ b/services/Android.bp @@ -17,6 +17,7 @@ java_defaults { "-Xep:AndroidFrameworkCompatChange:ERROR", // "-Xep:AndroidFrameworkUid:ERROR", "-Xep:SelfEquals:ERROR", + "-Xep:NullTernary:ERROR", // NOTE: only enable to generate local patchfiles // "-XepPatchChecks:refaster:frameworks/base/errorprone/refaster/EfficientXml.java.refaster", // "-XepPatchLocation:/tmp/refaster/", diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index e99b1f9a408c..7f4dcdcef44a 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -6847,7 +6847,7 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager { String.format(NOT_SYSTEM_CALLER_MSG, "call isAlwaysOnVpnLockdownEnabledForUser")); synchronized (getLockObject()) { ActiveAdmin admin = getDeviceOrProfileOwnerAdminLocked(userHandle); - return admin != null ? admin.mAlwaysOnVpnLockdown : null; + return admin != null && admin.mAlwaysOnVpnLockdown; } } |