Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6288bb19 authored by Jeff Sharkey's avatar Jeff Sharkey
Browse files

Tighten flags enforcement, API to test Uris.

Check and throw if callers request invalid grant flags.  Add API to
test if a Uri is backend by a DocumentsProvider.

Bug: 10919391, 10935608
Change-Id: Ifa6afefb95983558c8c64dc15ddf650e9fe07080
parent 7cf49037
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.provider.DocumentsContract;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
@@ -209,6 +210,9 @@ public class TestActivity extends Activity {
        if (requestCode == CODE_READ) {
            final Uri uri = data != null ? data.getData() : null;
            if (uri != null) {
                if (DocumentsContract.isDocumentUri(this, uri)) {
                    result += "; DOC_ID";
                }
                getContentResolver()
                        .takePersistableUriPermission(uri, Intent.FLAG_GRANT_READ_URI_PERMISSION);
                InputStream is = null;
@@ -228,6 +232,9 @@ public class TestActivity extends Activity {
        } else if (requestCode == CODE_WRITE) {
            final Uri uri = data != null ? data.getData() : null;
            if (uri != null) {
                if (DocumentsContract.isDocumentUri(this, uri)) {
                    result += "; DOC_ID";
                }
                getContentResolver()
                        .takePersistableUriPermission(uri, Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
                OutputStream os = null;