Merge "[NMS] Call isServiceTokenValidLocked with lock."

This commit is contained in:
Julia Reynolds
2022-07-26 10:55:03 +00:00
committed by Gerrit Code Review

View File

@@ -9404,10 +9404,16 @@ public class NotificationManagerService extends SystemService {
* given NAS is bound in. * given NAS is bound in.
*/ */
private boolean isInteractionVisibleToListener(ManagedServiceInfo info, int userId) { private boolean isInteractionVisibleToListener(ManagedServiceInfo info, int userId) {
boolean isAssistantService = mAssistants.isServiceTokenValidLocked(info.service); boolean isAssistantService = isServiceTokenValid(info.service);
return !isAssistantService || info.isSameUser(userId); return !isAssistantService || info.isSameUser(userId);
} }
private boolean isServiceTokenValid(IInterface service) {
synchronized (mNotificationLock) {
return mAssistants.isServiceTokenValidLocked(service);
}
}
private boolean isPackageSuspendedForUser(String pkg, int uid) { private boolean isPackageSuspendedForUser(String pkg, int uid) {
final long identity = Binder.clearCallingIdentity(); final long identity = Binder.clearCallingIdentity();
int userId = UserHandle.getUserId(uid); int userId = UserHandle.getUserId(uid);
@@ -10652,7 +10658,7 @@ public class NotificationManagerService extends SystemService {
BackgroundThread.getHandler().post(() -> { BackgroundThread.getHandler().post(() -> {
if (info.isSystem if (info.isSystem
|| hasCompanionDevice(info) || hasCompanionDevice(info)
|| mAssistants.isServiceTokenValidLocked(info.service)) { || isServiceTokenValid(info.service)) {
notifyNotificationChannelChanged( notifyNotificationChannelChanged(
info, pkg, user, channel, modificationType); info, pkg, user, channel, modificationType);
} }