diff options
author | Tony Mantler <nicoya@google.com> | 2015-05-01 13:44:01 -0700 |
---|---|---|
committer | Tony Mantler <nicoya@google.com> | 2015-05-04 10:57:44 -0700 |
commit | ca2954830c017c49523d5e2c7cb5916c76a52375 (patch) | |
tree | 84c46b0e370c1bcf15527e1b37152e3841ae41aa /packages/SettingsLib | |
parent | 5551aca2b8ec9fe7ab5ffda8dad82ee104556962 (diff) | |
download | frameworks_base-ca2954830c017c49523d5e2c7cb5916c76a52375.zip frameworks_base-ca2954830c017c49523d5e2c7cb5916c76a52375.tar.gz frameworks_base-ca2954830c017c49523d5e2c7cb5916c76a52375.tar.bz2 |
Don't crash in StorageMeasurement if volume isn't mounted
Change-Id: I3f5d62c93b0bb95bec358a33e1a4497f1b55f8ad
Diffstat (limited to 'packages/SettingsLib')
-rw-r--r-- | packages/SettingsLib/src/com/android/settingslib/deviceinfo/StorageMeasurement.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/deviceinfo/StorageMeasurement.java b/packages/SettingsLib/src/com/android/settingslib/deviceinfo/StorageMeasurement.java index 1cf7248..c81f22a 100644 --- a/packages/SettingsLib/src/com/android/settingslib/deviceinfo/StorageMeasurement.java +++ b/packages/SettingsLib/src/com/android/settingslib/deviceinfo/StorageMeasurement.java @@ -32,7 +32,6 @@ import android.os.HandlerThread; import android.os.IBinder; import android.os.Looper; import android.os.Message; -import android.os.RemoteException; import android.os.UserHandle; import android.os.UserManager; import android.os.storage.StorageVolume; @@ -349,6 +348,11 @@ public class StorageMeasurement { final Message finished = mMeasurementHandler.obtainMessage(MeasurementHandler.MSG_COMPLETED, details); + if (mVolume == null || !mVolume.isMountedReadable()) { + finished.sendToTarget(); + return; + } + if (mSharedVolume != null && mSharedVolume.isMountedReadable()) { final File basePath = mSharedVolume.getPathForUser(currentUser); @@ -375,8 +379,10 @@ public class StorageMeasurement { } final File file = mVolume.getPath(); - details.totalSize = file.getTotalSpace(); - details.availSize = file.getFreeSpace(); + if (file != null) { + details.totalSize = file.getTotalSpace(); + details.availSize = file.getFreeSpace(); + } // Measure all apps hosted on this volume for all users if (mVolume.getType() == VolumeInfo.TYPE_PRIVATE) { |