Loading services/core/java/com/android/server/media/MediaSessionRecord.java +12 −6 Original line number Diff line number Diff line Loading @@ -1362,9 +1362,15 @@ public class MediaSessionRecord extends MediaSessionRecordImpl implements IBinde @Override public IBinder getBinderForSetQueue() throws RemoteException { return new ParcelableListBinder<QueueItem>((list) -> { return new ParcelableListBinder<QueueItem>( (list) -> { // Checking list items are instanceof QueueItem to validate against // malicious apps calling it directly via reflection with non compilable // items. See b/317048338 for more details List<QueueItem> sanitizedQueue = list.stream().filter(it -> it instanceof QueueItem).toList(); synchronized (mLock) { mQueue = list; mQueue = sanitizedQueue; } mHandler.post(MessageHandler.MSG_UPDATE_QUEUE); }); Loading Loading
services/core/java/com/android/server/media/MediaSessionRecord.java +12 −6 Original line number Diff line number Diff line Loading @@ -1362,9 +1362,15 @@ public class MediaSessionRecord extends MediaSessionRecordImpl implements IBinde @Override public IBinder getBinderForSetQueue() throws RemoteException { return new ParcelableListBinder<QueueItem>((list) -> { return new ParcelableListBinder<QueueItem>( (list) -> { // Checking list items are instanceof QueueItem to validate against // malicious apps calling it directly via reflection with non compilable // items. See b/317048338 for more details List<QueueItem> sanitizedQueue = list.stream().filter(it -> it instanceof QueueItem).toList(); synchronized (mLock) { mQueue = list; mQueue = sanitizedQueue; } mHandler.post(MessageHandler.MSG_UPDATE_QUEUE); }); Loading