diff options
-rw-r--r-- | packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java b/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java index ec445d4dcbee..38cf5ab9afe6 100644 --- a/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java +++ b/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java @@ -318,6 +318,16 @@ public class ExternalStorageProvider extends FileSystemProvider { return false; } + // Allow all directories on USB, including the root. + try { + RootInfo rootInfo = getRootFromDocId(docId); + if ((rootInfo.flags & Root.FLAG_REMOVABLE_USB) == Root.FLAG_REMOVABLE_USB) { + return false; + } + } catch (FileNotFoundException e) { + Log.e(TAG, "Failed to determine rootInfo for docId"); + } + final String path = getPathFromDocId(docId); // Block the root of the storage |