From 28433dbdabd3f60224131039911a8f1def3fe670 Mon Sep 17 00:00:00 2001 From: Svetoslav Date: Tue, 14 Oct 2014 15:53:14 -0700 Subject: 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 --- .../com/android/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 f8f20dc458c0..a5a622c85b01 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(); -- cgit v1.2.3-59-g8ed1b