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 <neobuddy89@gmail.com>
This commit is contained in:
Pranav Vashi
2025-03-31 17:55:51 +05:30
committed by Joey
parent 7506ee034f
commit 74d367e108

View File

@@ -149,6 +149,9 @@ public class StorageAsyncLoader
return 0L; return 0L;
} }
return cursor.moveToFirst() ? cursor.getLong(0) : 0L; return cursor.moveToFirst() ? cursor.getLong(0) : 0L;
} catch (IllegalArgumentException e) {
Log.e(TAG, "Exception while querying storage: " + e.getMessage());
return 0L;
} }
} }