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

Commit 5a309a44 authored by Abhijeet Kaur's avatar Abhijeet Kaur Committed by Android (Google) Code Review
Browse files

Merge "Fix getUserIdFromUri() call for checkUriPermissions"

parents 244bbadc ce300740
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2260,7 +2260,7 @@ class ContextImpl extends Context {
            int modeFlags) {
        try {
            return ActivityManager.getService().checkUriPermissions(uris, pid, uid, modeFlags,
                    null);
                    getUserId(), null);
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
+1 −1
Original line number Diff line number Diff line
@@ -221,7 +221,7 @@ interface IActivityManager {
    int getProcessLimit();
    int checkUriPermission(in Uri uri, int pid, int uid, int mode, int userId,
            in IBinder callerToken);
    int[] checkUriPermissions(in List<Uri> uris, int pid, int uid, int mode,
    int[] checkUriPermissions(in List<Uri> uris, int pid, int uid, int mode, int userId,
                in IBinder callerToken);
    void grantUriPermission(in IApplicationThread caller, in String targetPkg, in Uri uri,
            int mode, int userId);
+3 −3
Original line number Diff line number Diff line
@@ -5706,7 +5706,7 @@ public class ActivityManagerService extends IActivityManager.Stub
    @Override
    public int[] checkUriPermissions(@NonNull List<Uri> uris, int pid, int uid,
            final int modeFlags, IBinder callerToken) {
            final int modeFlags, int userId, IBinder callerToken) {
        final int size = uris.size();
        int[] res = new int[size];
        // Default value DENIED.
@@ -5714,9 +5714,9 @@ public class ActivityManagerService extends IActivityManager.Stub
        for (int i = 0; i < size; i++) {
            final Uri uri = uris.get(i);
            final int userId = ContentProvider.getUserIdFromUri(uri, mContext.getUserId());
            final int userIdFromUri = ContentProvider.getUserIdFromUri(uri, userId);
            res[i] = checkUriPermission(ContentProvider.getUriWithoutUserId(uri), pid, uid,
                    modeFlags, userId, callerToken);
                    modeFlags, userIdFromUri, callerToken);
        }
        return res;
    }