Skip to content

Commit 3d6cf52

Browse files
Jimmy ChenAndroid (Google) Code Review
authored andcommitted
Merge "wifidisplay: restrict broadcast by the proper permission" into rvc-dev
2 parents 65eb4a4 + cff8340 commit 3d6cf52

2 files changed

Lines changed: 9 additions & 1 deletion

File tree

core/java/android/hardware/display/DisplayManager.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@ public final class DisplayManager {
6161
* {@link #EXTRA_WIFI_DISPLAY_STATUS} extra.
6262
* </p><p>
6363
* This broadcast is only sent to registered receivers and can only be sent by the system.
64+
* </p><p>
65+
* {@link android.Manifest.permission#ACCESS_FINE_LOCATION} permission is required to
66+
* receive this broadcast.
6467
* </p>
6568
* @hide
6669
*/

services/core/java/com/android/server/display/WifiDisplayAdapter.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,10 @@ final class WifiDisplayAdapter extends DisplayAdapter {
9191

9292
private boolean mPendingStatusChangeBroadcast;
9393

94+
private static final String[] RECEIVER_PERMISSIONS_FOR_BROADCAST = {
95+
android.Manifest.permission.ACCESS_FINE_LOCATION,
96+
};
97+
9498
// Called with SyncRoot lock held.
9599
public WifiDisplayAdapter(DisplayManagerService.SyncRoot syncRoot,
96100
Context context, Handler handler, Listener listener,
@@ -432,7 +436,8 @@ private void handleSendStatusChangeBroadcast() {
432436
}
433437

434438
// Send protected broadcast about wifi display status to registered receivers.
435-
getContext().sendBroadcastAsUser(intent, UserHandle.ALL);
439+
getContext().createContextAsUser(UserHandle.ALL, 0)
440+
.sendBroadcastWithMultiplePermissions(intent, RECEIVER_PERMISSIONS_FOR_BROADCAST);
436441
}
437442

438443
private final BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() {

0 commit comments

Comments
 (0)