diff options
author | Pinyao Ting <pinyaoting@google.com> | 2023-09-12 22:37:16 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-10-23 17:58:44 +0000 |
commit | 98605e3e8ac2070a33deca6775df275ca16c08c0 (patch) | |
tree | 02c6014f86e129c8329c309facffb795f1875974 | |
parent | cfaa169f179088ebd1d073dd24bea004aef92333 (diff) | |
download | Launcher3-98605e3e8ac2070a33deca6775df275ca16c08c0.tar.gz |
Fix permission bypass in legacy shortcut
Intent created for Chooser should not be allowed in legacy shortcuts
since it doesn't make sense for user to tap on a shortcut in homescreen
to share, the expected share flow started from ShareSheet.
Bug: 295334906, 295045199
Test: manual
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b7b192bd7f24a2aa7d6881ee949657c9760c0305)
Merged-In: I8d0cbccdc31bd4cb927830e5ecf841147400fdfa
Change-Id: I8d0cbccdc31bd4cb927830e5ecf841147400fdfa
-rw-r--r-- | src/com/android/launcher3/util/PackageManagerHelper.java | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/src/com/android/launcher3/util/PackageManagerHelper.java b/src/com/android/launcher3/util/PackageManagerHelper.java index 1bcdab1426..e44f682516 100644 --- a/src/com/android/launcher3/util/PackageManagerHelper.java +++ b/src/com/android/launcher3/util/PackageManagerHelper.java @@ -138,15 +138,8 @@ public class PackageManagerHelper { 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; - } + // Chooser shortcuts is not a valid target + return false; } ResolveInfo target = mPm.resolveActivity(intent, 0); if (target == null) { |