commit | 0c816c738d2386a461670e734f9d5ac643b4f7be | [log] [tgz] |
---|---|---|
author | Pinyao Ting <pinyaoting@google.com> | Tue Jun 06 03:43:10 2023 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Tue Jun 06 03:43:10 2023 +0000 |
tree | 368fad5474c9e1548d7382d9f3a4cff4f806298f | |
parent | 3c265823a8c3c21948e8f86a7a065bc3d02001c9 [diff] | |
parent | e2d76ce0a1681a1bb4fd85703040b41a10deecc5 [diff] |
Fix permission issue in legacy shortcut am: c53818a16b am: d19cb72bae am: 3c771b12fb am: d9bb5cd96f am: e2d76ce0a1 Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/23526090 Change-Id: I41bc3f0337ed6613f0fc9aaa6207b97cfe2339ad 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 f42d304..557d57e 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