summaryrefslogtreecommitdiff
path: root/services/appwidget/java
diff options
context:
space:
mode:
author Rubin Xu <rubinxu@google.com> 2016-04-06 11:54:59 +0100
committer Rubin Xu <rubinxu@google.com> 2016-04-06 11:54:59 +0100
commit0c9dd5b98a74c65e9e9e03a207681fc4b7bc4a0a (patch)
tree5bd11c4bcf728d309a65337f72baf2b5f068dd1c /services/appwidget/java
parent36712853a9d0b57702ee5b1fd936ff0b9f48c151 (diff)
Clear caller identity when calling createConfirmDeviceCredentialIntent
Bug: 27893870 Change-Id: I9edcd170432f8a2bd852a5fa78ab868201093dcf
Diffstat (limited to 'services/appwidget/java')
-rw-r--r--services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java33
1 files changed, 17 insertions, 16 deletions
diff --git a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java
index 1b0d3acb1bad..f93fb1b0f975 100644
--- a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java
+++ b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java
@@ -596,27 +596,28 @@ class AppWidgetServiceImpl extends IAppWidgetService.Stub implements WidgetBacku
}
final boolean showBadge;
final Intent onClickIntent;
- if (provider.maskedBySuspendedPackage) {
- final long identity = Binder.clearCallingIdentity();
- try {
+ final long identity = Binder.clearCallingIdentity();
+ try {
+ if (provider.maskedBySuspendedPackage) {
UserInfo userInfo = mUserManager.getUserInfo(providerUserId);
showBadge = userInfo.isManagedProfile();
onClickIntent = mDevicePolicyManagerInternal.createPackageSuspendedDialogIntent(
providerPackage, providerUserId);
- } finally {
- Binder.restoreCallingIdentity(identity);
- }
- } else if (provider.maskedByQuietProfile) {
- showBadge = true;
- onClickIntent = UnlaunchableAppActivity.createInQuietModeDialogIntent(
- providerUserId);
- } else /* provider.maskedByLockedProfile */ {
- showBadge = true;
- onClickIntent = mKeyguardManager.createConfirmDeviceCredentialIntent(null, null,
- providerUserId);
- if (onClickIntent != null) {
- onClickIntent.setFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
+ } else if (provider.maskedByQuietProfile) {
+ showBadge = true;
+ onClickIntent = UnlaunchableAppActivity.createInQuietModeDialogIntent(
+ providerUserId);
+ } else /* provider.maskedByLockedProfile */ {
+ showBadge = true;
+ onClickIntent = mKeyguardManager.createConfirmDeviceCredentialIntent(null, null,
+ providerUserId);
+ if (onClickIntent != null) {
+ onClickIntent.setFlags(FLAG_ACTIVITY_NEW_TASK
+ | FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
+ }
}
+ } finally {
+ Binder.restoreCallingIdentity(identity);
}
for (int j = 0; j < widgetCount; j++) {