summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-07-17 19:38:42 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-07-17 19:38:42 +0000
commit852466e10165242d0a625068a499431b115c55fe (patch)
tree7b08d912ea4105f28e65a22568c8319b71fad281
parent69e983ff07c65bf45dcd4f373f91ca8be6ab1d39 (diff)
parent6d000c46c00e7fd0bd95f2847a7a7423d442f839 (diff)
downloadLauncher3-android-platform-11.0.0_r36.tar.gz
Merge cherrypicks of ['googleplex-android-review.googlesource.com/23526090'] into rvc-platform-release.android-platform-11.0.0_r36android-platform-11.0.0_r35android-platform-11.0.0_r34
Change-Id: Id2f4e9610bd4b3d90afc79ddcab1cb776611e705
-rw-r--r--src/com/android/launcher3/util/PackageManagerHelper.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/com/android/launcher3/util/PackageManagerHelper.java b/src/com/android/launcher3/util/PackageManagerHelper.java
index 86f3431b54..02287fd0f1 100644
--- a/src/com/android/launcher3/util/PackageManagerHelper.java
+++ b/src/com/android/launcher3/util/PackageManagerHelper.java
@@ -153,6 +153,18 @@ public class PackageManagerHelper {
* 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