Merge "Merge "Clear calling identity" into oc-mr1-dev am: bc0c5882c6" into oc-mr1-dev-plus-aosp

This commit is contained in:
Android Build Merger (Role)
2017-09-14 19:53:13 +00:00
committed by Android (Google) Code Review

View File

@@ -2749,17 +2749,22 @@ public class NotificationManagerService extends SystemService {
public void setNotificationPolicyAccessGranted(String pkg, boolean granted)
throws RemoteException {
checkCallerIsSystemOrShell();
if (!mActivityManager.isLowRamDevice()) {
mConditionProviders.setPackageOrComponentEnabled(
pkg, getCallingUserHandle().getIdentifier(), true, granted);
final long identity = Binder.clearCallingIdentity();
try {
if (!mActivityManager.isLowRamDevice()) {
mConditionProviders.setPackageOrComponentEnabled(
pkg, getCallingUserHandle().getIdentifier(), true, granted);
getContext().sendBroadcastAsUser(new Intent(
NotificationManager.ACTION_NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED)
.setPackage(pkg)
.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY),
getCallingUserHandle(), null);
getContext().sendBroadcastAsUser(new Intent(
NotificationManager.ACTION_NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED)
.setPackage(pkg)
.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY),
getCallingUserHandle(), null);
savePolicyFile();
savePolicyFile();
}
} finally {
Binder.restoreCallingIdentity(identity);
}
}
@@ -2841,19 +2846,25 @@ public class NotificationManagerService extends SystemService {
boolean granted) throws RemoteException {
Preconditions.checkNotNull(listener);
checkCallerIsSystemOrShell();
if (!mActivityManager.isLowRamDevice()) {
mConditionProviders.setPackageOrComponentEnabled(listener.flattenToString(),
userId, false, granted);
mListeners.setPackageOrComponentEnabled(listener.flattenToString(),
userId, true, granted);
final long identity = Binder.clearCallingIdentity();
try {
if (!mActivityManager.isLowRamDevice()) {
mConditionProviders.setPackageOrComponentEnabled(listener.flattenToString(),
userId, false, granted);
mListeners.setPackageOrComponentEnabled(listener.flattenToString(),
userId, true, granted);
getContext().sendBroadcastAsUser(new Intent(
NotificationManager.ACTION_NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED)
.setPackage(listener.getPackageName())
.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY),
getCallingUserHandle(), null);
getContext().sendBroadcastAsUser(new Intent(
NotificationManager.ACTION_NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED)
savePolicyFile();
.setPackage(listener.getPackageName())
.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY),
getCallingUserHandle(), null);
savePolicyFile();
}
} finally {
Binder.restoreCallingIdentity(identity);
}
}
@@ -2862,19 +2873,24 @@ public class NotificationManagerService extends SystemService {
int userId, boolean granted) throws RemoteException {
Preconditions.checkNotNull(assistant);
checkCallerIsSystemOrShell();
if (!mActivityManager.isLowRamDevice()) {
mConditionProviders.setPackageOrComponentEnabled(assistant.flattenToString(),
userId, false, granted);
mAssistants.setPackageOrComponentEnabled(assistant.flattenToString(),
userId, true, granted);
final long identity = Binder.clearCallingIdentity();
try {
if (!mActivityManager.isLowRamDevice()) {
mConditionProviders.setPackageOrComponentEnabled(assistant.flattenToString(),
userId, false, granted);
mAssistants.setPackageOrComponentEnabled(assistant.flattenToString(),
userId, true, granted);
getContext().sendBroadcastAsUser(new Intent(
NotificationManager.ACTION_NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED)
.setPackage(assistant.getPackageName())
.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY),
getCallingUserHandle(), null);
getContext().sendBroadcastAsUser(new Intent(
NotificationManager.ACTION_NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED)
.setPackage(assistant.getPackageName())
.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY),
getCallingUserHandle(), null);
savePolicyFile();
savePolicyFile();
}
} finally {
Binder.restoreCallingIdentity(identity);
}
}