From 74d367e108ede9f3e1e700d0241387d21f0c5e18 Mon Sep 17 00:00:00 2001 From: Pranav Vashi Date: Mon, 31 Mar 2025 17:55:51 +0530 Subject: [PATCH] Settings: Prevent IllegalArgumentException in storage settings Log: 12:52:01.470 3086 5008 E AndroidRuntime: FATAL EXCEPTION: AsyncTask #2 03-31 12:52:01.470 3086 5008 E AndroidRuntime: Process: com.android.settings, PID: 3086 03-31 12:52:01.470 3086 5008 E AndroidRuntime: java.lang.RuntimeException: An error occurred while executing doInBackground() 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at androidx.loader.content.ModernAsyncTask$2.done(ModernAsyncTask.java:119) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:434) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at java.util.concurrent.FutureTask.setException(FutureTask.java:303) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at java.util.concurrent.FutureTask.run(FutureTask.java:322) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at java.lang.Thread.run(Thread.java:1119) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: Caused by: java.lang.IllegalArgumentException: Volume external_primary not found 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:183) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:153) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at android.content.ContentProviderProxy.query(ContentProviderNative.java:495) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at android.content.ContentResolver.query(ContentResolver.java:1229) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at com.android.settings.deviceinfo.storage.StorageAsyncLoader.getFilesSize(StorageAsyncLoader.java:143) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at com.android.settings.deviceinfo.storage.StorageAsyncLoader.getStorageResultsForUsers(StorageAsyncLoader.java:93) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at com.android.settings.deviceinfo.storage.StorageAsyncLoader.loadInBackground(StorageAsyncLoader.java:76) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at com.android.settings.deviceinfo.storage.StorageAsyncLoader.loadInBackground(StorageAsyncLoader.java:55) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at androidx.loader.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:289) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at androidx.loader.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at androidx.loader.content.ModernAsyncTask$1.call(ModernAsyncTask.java:96) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: at java.util.concurrent.FutureTask.run(FutureTask.java:317) 03-31 12:52:01.470 3086 5008 E AndroidRuntime: ... 3 more Signed-off-by: Pranav Vashi --- .../settings/deviceinfo/storage/StorageAsyncLoader.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/com/android/settings/deviceinfo/storage/StorageAsyncLoader.java b/src/com/android/settings/deviceinfo/storage/StorageAsyncLoader.java index 7b8b237654c..8a6cef43cfc 100644 --- a/src/com/android/settings/deviceinfo/storage/StorageAsyncLoader.java +++ b/src/com/android/settings/deviceinfo/storage/StorageAsyncLoader.java @@ -149,6 +149,9 @@ public class StorageAsyncLoader return 0L; } return cursor.moveToFirst() ? cursor.getLong(0) : 0L; + } catch (IllegalArgumentException e) { + Log.e(TAG, "Exception while querying storage: " + e.getMessage()); + return 0L; } }