From: Jeff Sharkey Date: Mon, 12 Jun 2017 23:33:58 +0000 (-0600) Subject: DO NOT MERGE. ActivityPicker shouldn't grant permissions. X-Git-Tag: android-x86-8.1-r1~17^2~1^2~5^2^2 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=b5e93969a5e0c3a3f07e068dbc763cdd995a0e21;p=android-x86%2Fpackages-apps-Settings.git DO NOT MERGE. ActivityPicker shouldn't grant permissions. This picker has no business granting any Uri permissions, so remove any grant flags that malicious apps may have tried sneaking in. Test: builds, boots Bug: 32879772 Change-Id: I91c48c73287a271bd6c99e60e216dead22e68764 (cherry picked from commit 3f218e8431cb5648bcb46131551c133ba53ef870) --- diff --git a/src/com/android/settings/ActivityPicker.java b/src/com/android/settings/ActivityPicker.java index 2c3436fc70..ae61944cbe 100644 --- a/src/com/android/settings/ActivityPicker.java +++ b/src/com/android/settings/ActivityPicker.java @@ -78,6 +78,10 @@ public class ActivityPicker extends AlertActivity implements Parcelable parcel = intent.getParcelableExtra(Intent.EXTRA_INTENT); if (parcel instanceof Intent) { mBaseIntent = (Intent) parcel; + mBaseIntent.setFlags(mBaseIntent.getFlags() & ~(Intent.FLAG_GRANT_READ_URI_PERMISSION + | Intent.FLAG_GRANT_WRITE_URI_PERMISSION + | Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION + | Intent.FLAG_GRANT_PREFIX_URI_PERMISSION)); } else { mBaseIntent = new Intent(Intent.ACTION_MAIN, null); mBaseIntent.addCategory(Intent.CATEGORY_DEFAULT);