Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d2c3c364 authored by Evan Chen's avatar Evan Chen Committed by Automerger Merge Worker
Browse files

Merge "Do not allow setting notification access across users." into udc-dev...

Merge "Do not allow setting notification access across users." into udc-dev am: 0e1af057 am: dd21aad1

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/25096530



Change-Id: If3ed0f73991e03429b272b783c29c4d09f25b1d3
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 0b9abd87 dd21aad1
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -687,8 +687,7 @@ public class CompanionDeviceManagerService extends SystemService {
        public PendingIntent requestNotificationAccess(ComponentName component, int userId)
                throws RemoteException {
            String callingPackage = component.getPackageName();
            checkCanCallNotificationApi(callingPackage);
            // TODO: check userId.
            checkCanCallNotificationApi(callingPackage, userId);
            if (component.flattenToString().length() > MAX_CN_LENGTH) {
                throw new IllegalArgumentException("Component name is too long.");
            }
@@ -714,7 +713,7 @@ public class CompanionDeviceManagerService extends SystemService {
        @Deprecated
        @Override
        public boolean hasNotificationAccess(ComponentName component) throws RemoteException {
            checkCanCallNotificationApi(component.getPackageName());
            checkCanCallNotificationApi(component.getPackageName(), getCallingUserId());
            NotificationManager nm = getContext().getSystemService(NotificationManager.class);
            return nm.isNotificationListenerAccessGranted(component);
        }
@@ -928,8 +927,7 @@ public class CompanionDeviceManagerService extends SystemService {
            createNewAssociation(userId, packageName, macAddressObj, null, null, false);
        }

        private void checkCanCallNotificationApi(String callingPackage) {
            final int userId = getCallingUserId();
        private void checkCanCallNotificationApi(String callingPackage, int userId) {
            enforceCallerIsSystemOr(userId, callingPackage);

            if (getCallingUid() == SYSTEM_UID) return;