summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Michael Wright <michaelwr@google.com> 2022-02-04 19:00:44 +0000
committer Michael Wright <michaelwr@google.com> 2022-02-04 21:17:09 +0000
commit2e7197c2ae0a5983e86d9dacb0ce5357c5873c3e (patch)
treea3d700a575f5789f7bd84150139695e55772ee51
parent010aa30bc459f2f1df717b0c09928a0ce366193b (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.bp1
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java2
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;
}
}