Only send EXTRA_STACK for private intent.
Since it's a private Parcelable class, we can't send it to other third-party apps, since they won't know how to unpack it. Bug: 22255387 Change-Id: Ie2ea6cf72b733bd122eb3581a5df295cec608425
This commit is contained in:
@@ -720,14 +720,15 @@ public class DocumentsActivity extends BaseActivity {
|
||||
|
||||
if (mState.action == ACTION_GET_CONTENT) {
|
||||
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
|
||||
} else if (mState.action == ACTION_OPEN_TREE ||
|
||||
mState.action == ACTION_OPEN_COPY_DESTINATION) {
|
||||
} else if (mState.action == ACTION_OPEN_TREE) {
|
||||
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION
|
||||
| Intent.FLAG_GRANT_WRITE_URI_PERMISSION
|
||||
| Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION
|
||||
| Intent.FLAG_GRANT_PREFIX_URI_PERMISSION);
|
||||
// TODO: Move passing the stack to the separate ACTION_COPY action once it's implemented.
|
||||
intent.putExtra(CopyService.EXTRA_STACK, (Parcelable)mState.stack);
|
||||
} else if (mState.action == ACTION_OPEN_COPY_DESTINATION) {
|
||||
// Picking a copy destination is only used internally by us, so we
|
||||
// don't need to extend permissions to the caller.
|
||||
intent.putExtra(CopyService.EXTRA_STACK, (Parcelable) mState.stack);
|
||||
} else {
|
||||
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION
|
||||
| Intent.FLAG_GRANT_WRITE_URI_PERMISSION
|
||||
|
||||
Reference in New Issue
Block a user