From 3c08e868228a254aa7b4eb636ac5a7fefb0678cc Mon Sep 17 00:00:00 2001 From: akwizgran Date: Sun, 17 Apr 2022 11:36:16 +0100 Subject: [PATCH] Rethrow SecurityExceptions when opening files on removable drives. --- .../plugin/file/AndroidRemovableDrivePlugin.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/bramble-android/src/main/java/org/briarproject/bramble/plugin/file/AndroidRemovableDrivePlugin.java b/bramble-android/src/main/java/org/briarproject/bramble/plugin/file/AndroidRemovableDrivePlugin.java index 3d038f145..6d325a02f 100644 --- a/bramble-android/src/main/java/org/briarproject/bramble/plugin/file/AndroidRemovableDrivePlugin.java +++ b/bramble-android/src/main/java/org/briarproject/bramble/plugin/file/AndroidRemovableDrivePlugin.java @@ -32,13 +32,22 @@ class AndroidRemovableDrivePlugin extends RemovableDrivePlugin { InputStream openInputStream(TransportProperties p) throws IOException { String uri = p.get(PROP_URI); if (isNullOrEmpty(uri)) throw new IllegalArgumentException(); - return app.getContentResolver().openInputStream(Uri.parse(uri)); + try { + return app.getContentResolver().openInputStream(Uri.parse(uri)); + } catch (SecurityException e) { + throw new IOException(e); + } } @Override OutputStream openOutputStream(TransportProperties p) throws IOException { String uri = p.get(PROP_URI); if (isNullOrEmpty(uri)) throw new IllegalArgumentException(); - return app.getContentResolver().openOutputStream(Uri.parse(uri), "wt"); + try { + return app.getContentResolver() + .openOutputStream(Uri.parse(uri), "wt"); + } catch (SecurityException e) { + throw new IOException(e); + } } }