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 1e19786f5d41..3bbf0c09b48e 100644 --- a/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java +++ b/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java @@ -319,6 +319,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 |