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

Commit 7ac63870 authored by Adam Powell's avatar Adam Powell Committed by android-build-merger
Browse files

Backport ChooserTarget package source check from N am: 82b9565b

am: 6d5f80d1

* commit '6d5f80d1':
  Backport ChooserTarget package source check from N

Change-Id: Iec7902498e2cfe53ce16dc9faf2d91340f416799
parents 343600c3 6d5f80d1
Loading
Loading
Loading
Loading
+13 −1
Original line number Diff line number Diff line
@@ -656,7 +656,19 @@ public class ChooserActivity extends ResolverActivity {
            }
            intent.setComponent(mChooserTarget.getComponentName());
            intent.putExtras(mChooserTarget.getIntentExtras());
            activity.startActivityAsCaller(intent, options, true, userId);

            // Important: we will ignore the target security checks in ActivityManager
            // if and only if the ChooserTarget's target package is the same package
            // where we got the ChooserTargetService that provided it. This lets a
            // ChooserTargetService provide a non-exported or permission-guarded target
            // to the chooser for the user to pick.
            //
            // If mSourceInfo is null, we got this ChooserTarget from the caller or elsewhere
            // so we'll obey the caller's normal security checks.
            final boolean ignoreTargetSecurity = mSourceInfo != null
                    && mSourceInfo.getResolvedComponentName().getPackageName()
                    .equals(mChooserTarget.getComponentName().getPackageName());
            activity.startActivityAsCaller(intent, options, ignoreTargetSecurity, userId);
            return true;
        }