commit | e2d76ce0a1681a1bb4fd85703040b41a10deecc5 | [log] [tgz] |
---|---|---|
author | Pinyao Ting <pinyaoting@google.com> | Tue Jun 06 03:06:32 2023 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Tue Jun 06 03:06:32 2023 +0000 |
tree | bc0f6ce1f062ecf6f793ff7b39d9e933225a6416 | |
parent | f6d75c98a94d173ae59afc9bd126d1e72d1b28fa [diff] | |
parent | d9bb5cd96ff94822b5ebe5c1375d8634accf2557 [diff] |
Fix permission issue in legacy shortcut am: c53818a16b am: d19cb72bae am: 3c771b12fb am: d9bb5cd96f Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/23526090 Change-Id: I4ea4039f3c1e70385a87a7f53a0da2aa231af8e1 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/src/com/android/launcher3/util/PackageManagerHelper.java b/src/com/android/launcher3/util/PackageManagerHelper.java index 08ec591..1bcdab1 100644 --- a/src/com/android/launcher3/util/PackageManagerHelper.java +++ b/src/com/android/launcher3/util/PackageManagerHelper.java
@@ -136,6 +136,18 @@ * any permissions */ public boolean hasPermissionForActivity(Intent intent, String srcPackage) { + // b/270152142 + if (Intent.ACTION_CHOOSER.equals(intent.getAction())) { + final Bundle extras = intent.getExtras(); + if (extras == null) { + return true; + } + // If given intent is ACTION_CHOOSER, verify srcPackage has permission over EXTRA_INTENT + intent = (Intent) extras.getParcelable(Intent.EXTRA_INTENT); + if (intent == null) { + return true; + } + } ResolveInfo target = mPm.resolveActivity(intent, 0); if (target == null) { // Not a valid target