diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-08-18 06:16:05 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-08-18 06:16:05 +0000 |
commit | 34ece9b8e43263b7fa29a71d11c5324c8ff0b59a (patch) | |
tree | 9f1184083435b51ee8d036b632fb008cea686c0b | |
parent | 19e30560b71f9a36572ed0c6fe019d3363b2736e (diff) | |
parent | 1711f061702bb9f1967ef186b2a7a89e2e085495 (diff) |
Snap for 10678424 from 1711f061702bb9f1967ef186b2a7a89e2e085495 to t-keystone-qcom-release
Change-Id: I37ffa48d3287f5c81048953e8f94cad847ab9a0d
-rw-r--r-- | AndroidManifest-common.xml | 1 | ||||
-rw-r--r-- | src/com/android/launcher3/util/PackageManagerHelper.java | 12 |
2 files changed, 12 insertions, 1 deletions
diff --git a/AndroidManifest-common.xml b/AndroidManifest-common.xml index 0c7b48fe66..60ddfb6ce5 100644 --- a/AndroidManifest-common.xml +++ b/AndroidManifest-common.xml @@ -44,7 +44,6 @@ <!-- for rotating surface by arbitrary degree --> <uses-permission android:name="android.permission.ROTATE_SURFACE_FLINGER" /> <uses-permission android:name="android.permission.POST_NOTIFICATIONS" /> - <uses-permission android:name="android.permission.READ_HOME_APP_SEARCH_DATA" /> <!-- Permissions required for read/write access to the workspace data. These permission name diff --git a/src/com/android/launcher3/util/PackageManagerHelper.java b/src/com/android/launcher3/util/PackageManagerHelper.java index a6a2751dc7..586e0c9e89 100644 --- a/src/com/android/launcher3/util/PackageManagerHelper.java +++ b/src/com/android/launcher3/util/PackageManagerHelper.java @@ -145,6 +145,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 |