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

Commit 32bf2b17 authored by Brian Julian's avatar Brian Julian Committed by Presubmit Automerger Backend
Browse files

[automerge] DO NOT MERGE. Add a permissions check to LocationManagerService. 2p: 5b376bc9

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

Bug: 222473855
Change-Id: I660763f54e7f129d24c0fedb2443413e9ce99326
parents abb06fd6 5b376bc9
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.server.location;

import static android.Manifest.permission.ACCESS_FINE_LOCATION;
import static android.Manifest.permission.INTERACT_ACROSS_USERS;
import static android.app.compat.CompatChanges.isChangeEnabled;
import static android.content.pm.PackageManager.MATCH_DIRECT_BOOT_AWARE;
import static android.content.pm.PackageManager.MATCH_SYSTEM_ONLY;
@@ -39,6 +40,7 @@ import android.Manifest;
import android.Manifest.permission;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.RequiresPermission;
import android.app.ActivityManager;
import android.app.AppOpsManager;
import android.app.PendingIntent;
@@ -1063,10 +1065,12 @@ public class LocationManagerService extends ILocationManager.Stub implements

    @Override
    public void addProviderRequestListener(IProviderRequestListener listener) {
        if (mContext.checkCallingOrSelfPermission(INTERACT_ACROSS_USERS) == PERMISSION_GRANTED) {
            for (LocationProviderManager manager : mProviderManagers) {
                manager.addProviderRequestListener(listener);
            }
        }
    }

    @Override
    public void removeProviderRequestListener(IProviderRequestListener listener) {