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

Commit 5596fd92 authored by Rhed Jao's avatar Rhed Jao Committed by Automerger Merge Worker
Browse files

Merge "Enforce package visibility filter on the PreferredActivities" into sc-dev am: e892a527

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

Change-Id: I9312b1031c67414304ad0ad5502968e33f26924e
parents b5c8bce3 e892a527
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -22726,7 +22726,8 @@ public class PackageManagerService extends IPackageManager.Stub
     */
    public int getPreferredActivitiesInternal(List<WatchedIntentFilter> outFilters,
            List<ComponentName> outActivities, String packageName) {
        if (getInstantAppPackageName(Binder.getCallingUid()) != null) {
        final int callingUid = Binder.getCallingUid();
        if (getInstantAppPackageName(callingUid) != null) {
            return 0;
        }
        int num = 0;
@@ -22738,9 +22739,13 @@ public class PackageManagerService extends IPackageManager.Stub
                final Iterator<PreferredActivity> it = pir.filterIterator();
                while (it.hasNext()) {
                    final PreferredActivity pa = it.next();
                    final String prefPackageName = pa.mPref.mComponent.getPackageName();
                    if (packageName == null
                            || (pa.mPref.mComponent.getPackageName().equals(packageName)
                                    && pa.mPref.mAlways)) {
                            || (prefPackageName.equals(packageName) && pa.mPref.mAlways)) {
                        if (shouldFilterApplicationLocked(
                                mSettings.getPackageLPr(prefPackageName), callingUid, userId)) {
                            continue;
                        }
                        if (outFilters != null) {
                            outFilters.add(new WatchedIntentFilter(pa.getIntentFilter()));
                        }