RESTRICT AUTOMERGE 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
Change-Id: I8d0cbccdc31bd4cb927830e5ecf841147400fdfa
This commit is contained in:
Pinyao Ting
2023-09-12 22:37:16 +00:00
parent 19e80fd3e1
commit 602cb48c72

View File

@@ -147,15 +147,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) {