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

Commit f224e010 authored by Jeff Chang's avatar Jeff Chang Committed by Automerger Merge Worker
Browse files

Merge "Prevent app check via content provider." into sc-dev am: ad7b18e0

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

Change-Id: Idcb5963fb34213f2763bcffb6b71422d855b501a
parents b1910d7d ad7b18e0
Loading
Loading
Loading
Loading
+11 −7
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.server.wm;

import static android.app.ActivityManager.START_CANCELED;
import static android.app.ActivityManager.START_SUCCESS;
import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME;
import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN;
@@ -390,15 +391,18 @@ public class ActivityStartController {
                        0 /* startFlags */, null /* profilerInfo */, userId, filterCallingUid);
                aInfo = mService.mAmInternal.getActivityInfoForUser(aInfo, userId);

                // Carefully collect grants without holding lock
                if (aInfo != null) {
                    try {
                        // Carefully collect grants without holding lock
                        intentGrants = mSupervisor.mService.mUgmInternal
                                .checkGrantUriPermissionFromIntent(intent, filterCallingUid,
                                        aInfo.applicationInfo.packageName,
                                        UserHandle.getUserId(aInfo.applicationInfo.uid));
                    } catch (SecurityException e) {
                        Slog.d(TAG, "Not allowed to start activity since no uri permission.");
                        return START_CANCELED;
                    }

                if (aInfo != null) {
                    if ((aInfo.applicationInfo.privateFlags
                            & ApplicationInfo.PRIVATE_FLAG_CANT_SAVE_STATE) != 0) {
                        throw new IllegalArgumentException(