Build both filename views before deleting.
Otherwise we'll throw when trying to create the second (visible)
filename because we just deleted it.
Bug: 30087518
Change-Id: I940a8f81c264fc17d477fadf46fd48eae29f2f6f
diff --git a/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java b/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java
index a3070bd..78b9927 100644
--- a/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java
+++ b/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java
@@ -484,6 +484,8 @@
@Override
public void deleteDocument(String docId) throws FileNotFoundException {
final File file = getFileForDocId(docId);
+ final File visibleFile = getFileForDocId(docId, true);
+
final boolean isDirectory = file.isDirectory();
if (isDirectory) {
FileUtils.deleteContents(file);
@@ -492,7 +494,6 @@
throw new IllegalStateException("Failed to delete " + file);
}
- final File visibleFile = getFileForDocId(docId, true);
if (visibleFile != null) {
final ContentResolver resolver = getContext().getContentResolver();
final Uri externalUri = MediaStore.Files.getContentUri("external");