Loading media/java/android/media/session/ISession.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ interface ISession { ISessionController getController(); void setFlags(int flags); void setActive(boolean active); void setMediaButtonReceiver(in PendingIntent mbr); void setMediaButtonReceiver(in PendingIntent mbr, String sessionPackageName); void setMediaButtonBroadcastReceiver(in ComponentName broadcastReceiver); void setLaunchPendingIntent(in PendingIntent pi); void destroySession(); Loading media/java/android/media/session/MediaSession.java +1 −1 Original line number Diff line number Diff line Loading @@ -286,7 +286,7 @@ public final class MediaSession { @Deprecated public void setMediaButtonReceiver(@Nullable PendingIntent mbr) { try { mBinder.setMediaButtonReceiver(mbr); mBinder.setMediaButtonReceiver(mbr, mContext.getPackageName()); } catch (RemoteException e) { Log.wtf(TAG, "Failure in setMediaButtonReceiver.", e); } Loading services/core/java/com/android/server/media/MediaButtonReceiverHolder.java +1 −1 Original line number Diff line number Diff line Loading @@ -119,7 +119,7 @@ final class MediaButtonReceiverHolder { ComponentName componentName = getComponentName(pendingIntent, componentType); if (componentName != null) { if (!TextUtils.equals(componentName.getPackageName(), sessionPackageName)) { EventLog.writeEvent(0x534e4554, "238177121", -1, ""); // SafetyNet Logging. EventLog.writeEvent(0x534e4554, "238177121", -1, ""); throw new IllegalArgumentException("ComponentName does not belong to " + "sessionPackageName. sessionPackageName = " + sessionPackageName + ", ComponentName pkg = " + componentName.getPackageName()); Loading services/core/java/com/android/server/media/MediaSessionRecord.java +12 −3 Original line number Diff line number Diff line Loading @@ -914,7 +914,16 @@ public class MediaSessionRecord implements IBinder.DeathRecipient, MediaSessionR } @Override public void setMediaButtonReceiver(PendingIntent pi) throws RemoteException { public void setMediaButtonReceiver(PendingIntent pi, String sessionPackageName) throws RemoteException { //mPackageName has been verified in MediaSessionService.enforcePackageName(). if (!TextUtils.equals(sessionPackageName, mPackageName)) { EventLog.writeEvent(0x534e4554, "238177121", -1, ""); throw new IllegalArgumentException("sessionPackageName name does not match " + "package name provided to MediaSessionRecord. sessionPackageName = " + sessionPackageName + ", pkg = " + mPackageName); } final long token = Binder.clearCallingIdentity(); try { if ((mPolicies & MediaSessionPolicyProvider.SESSION_POLICY_IGNORE_BUTTON_RECEIVER) Loading @@ -922,7 +931,7 @@ public class MediaSessionRecord implements IBinder.DeathRecipient, MediaSessionR return; } mMediaButtonReceiverHolder = MediaButtonReceiverHolder.create(mContext, mUserId, pi, mPackageName); MediaButtonReceiverHolder.create(mContext, mUserId, pi, sessionPackageName); mService.onMediaButtonReceiverChanged(MediaSessionRecord.this); } finally { Binder.restoreCallingIdentity(token); Loading @@ -936,7 +945,7 @@ public class MediaSessionRecord implements IBinder.DeathRecipient, MediaSessionR //mPackageName has been verified in MediaSessionService.enforcePackageName(). if (receiver != null && !TextUtils.equals( mPackageName, receiver.getPackageName())) { EventLog.writeEvent(0x534e4554, "238177121", -1, ""); // SafetyNet Logging. EventLog.writeEvent(0x534e4554, "238177121", -1, ""); throw new IllegalArgumentException("receiver does not belong to " + "package name provided to MediaSessionRecord. Pkg = " + mPackageName + ", Receiver Pkg = " + receiver.getPackageName()); Loading Loading
media/java/android/media/session/ISession.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ interface ISession { ISessionController getController(); void setFlags(int flags); void setActive(boolean active); void setMediaButtonReceiver(in PendingIntent mbr); void setMediaButtonReceiver(in PendingIntent mbr, String sessionPackageName); void setMediaButtonBroadcastReceiver(in ComponentName broadcastReceiver); void setLaunchPendingIntent(in PendingIntent pi); void destroySession(); Loading
media/java/android/media/session/MediaSession.java +1 −1 Original line number Diff line number Diff line Loading @@ -286,7 +286,7 @@ public final class MediaSession { @Deprecated public void setMediaButtonReceiver(@Nullable PendingIntent mbr) { try { mBinder.setMediaButtonReceiver(mbr); mBinder.setMediaButtonReceiver(mbr, mContext.getPackageName()); } catch (RemoteException e) { Log.wtf(TAG, "Failure in setMediaButtonReceiver.", e); } Loading
services/core/java/com/android/server/media/MediaButtonReceiverHolder.java +1 −1 Original line number Diff line number Diff line Loading @@ -119,7 +119,7 @@ final class MediaButtonReceiverHolder { ComponentName componentName = getComponentName(pendingIntent, componentType); if (componentName != null) { if (!TextUtils.equals(componentName.getPackageName(), sessionPackageName)) { EventLog.writeEvent(0x534e4554, "238177121", -1, ""); // SafetyNet Logging. EventLog.writeEvent(0x534e4554, "238177121", -1, ""); throw new IllegalArgumentException("ComponentName does not belong to " + "sessionPackageName. sessionPackageName = " + sessionPackageName + ", ComponentName pkg = " + componentName.getPackageName()); Loading
services/core/java/com/android/server/media/MediaSessionRecord.java +12 −3 Original line number Diff line number Diff line Loading @@ -914,7 +914,16 @@ public class MediaSessionRecord implements IBinder.DeathRecipient, MediaSessionR } @Override public void setMediaButtonReceiver(PendingIntent pi) throws RemoteException { public void setMediaButtonReceiver(PendingIntent pi, String sessionPackageName) throws RemoteException { //mPackageName has been verified in MediaSessionService.enforcePackageName(). if (!TextUtils.equals(sessionPackageName, mPackageName)) { EventLog.writeEvent(0x534e4554, "238177121", -1, ""); throw new IllegalArgumentException("sessionPackageName name does not match " + "package name provided to MediaSessionRecord. sessionPackageName = " + sessionPackageName + ", pkg = " + mPackageName); } final long token = Binder.clearCallingIdentity(); try { if ((mPolicies & MediaSessionPolicyProvider.SESSION_POLICY_IGNORE_BUTTON_RECEIVER) Loading @@ -922,7 +931,7 @@ public class MediaSessionRecord implements IBinder.DeathRecipient, MediaSessionR return; } mMediaButtonReceiverHolder = MediaButtonReceiverHolder.create(mContext, mUserId, pi, mPackageName); MediaButtonReceiverHolder.create(mContext, mUserId, pi, sessionPackageName); mService.onMediaButtonReceiverChanged(MediaSessionRecord.this); } finally { Binder.restoreCallingIdentity(token); Loading @@ -936,7 +945,7 @@ public class MediaSessionRecord implements IBinder.DeathRecipient, MediaSessionR //mPackageName has been verified in MediaSessionService.enforcePackageName(). if (receiver != null && !TextUtils.equals( mPackageName, receiver.getPackageName())) { EventLog.writeEvent(0x534e4554, "238177121", -1, ""); // SafetyNet Logging. EventLog.writeEvent(0x534e4554, "238177121", -1, ""); throw new IllegalArgumentException("receiver does not belong to " + "package name provided to MediaSessionRecord. Pkg = " + mPackageName + ", Receiver Pkg = " + receiver.getPackageName()); Loading