From 28433dbdabd3f60224131039911a8f1def3fe670 Mon Sep 17 00:00:00 2001 From: Svetoslav Date: Tue, 14 Oct 2014 15:53:14 -0700 Subject: [PATCH] Fix a NPE in device policy manager service. It is possible that the device does not have an owner. If there is no owner we get a NPE when asking the device policy manager for cross-profile widget providers. bug:17989189 Change-Id: I5759f2dec160ed8076ab47fdf09134f78c57458d --- .../server/devicepolicy/DevicePolicyManagerService.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index f8f20dc458c02..a5a622c85b018 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -5320,6 +5320,9 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { @Override public List getCrossProfileWidgetProviders(int profileId) { synchronized (DevicePolicyManagerService.this) { + if (mDeviceOwner == null) { + return Collections.emptyList(); + } ComponentName ownerComponent = mDeviceOwner.getProfileOwnerComponent(profileId); if (ownerComponent == null) { return Collections.emptyList();