summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2015-06-16 16:46:03 -0700
committerJeff Sharkey <jsharkey@android.com>2015-06-16 16:46:03 -0700
commite79ff145f3da966262d050898125c51f4bdc75e4 (patch)
treec279dc9d50bb5bb6f8fe24d38395d612d7f8ed7c
parent8e987d9bfb9c69daf306c52d84d8ea480eb4d73a (diff)
downloadpackages_apps_Settings-e79ff145f3da966262d050898125c51f4bdc75e4.zip
packages_apps_Settings-e79ff145f3da966262d050898125c51f4bdc75e4.tar.gz
packages_apps_Settings-e79ff145f3da966262d050898125c51f4bdc75e4.tar.bz2
Gracefully finish when missing volume.
Bug: 21403958 Change-Id: Icb78bb633842571c4df696c9db72a5b97ece0655
-rw-r--r--src/com/android/settings/deviceinfo/PrivateVolumeSettings.java7
-rw-r--r--src/com/android/settings/deviceinfo/PublicVolumeSettings.java7
2 files changed, 12 insertions, 2 deletions
diff --git a/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java b/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java
index 799121b..b7a42c3 100644
--- a/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java
+++ b/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java
@@ -127,7 +127,12 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
mVolumeId = getArguments().getString(VolumeInfo.EXTRA_VOLUME_ID);
mVolume = mStorageManager.findVolumeById(mVolumeId);
- Preconditions.checkNotNull(mVolume);
+ if (mVolume == null) {
+ Log.d(TAG, "Leaving details fragment due to missing volume");
+ finish();
+ return;
+ }
+
Preconditions.checkState(mVolume.getType() == VolumeInfo.TYPE_PRIVATE);
addPreferencesFromResource(R.xml.device_info_storage_volume);
diff --git a/src/com/android/settings/deviceinfo/PublicVolumeSettings.java b/src/com/android/settings/deviceinfo/PublicVolumeSettings.java
index 08117ba..8e912eb 100644
--- a/src/com/android/settings/deviceinfo/PublicVolumeSettings.java
+++ b/src/com/android/settings/deviceinfo/PublicVolumeSettings.java
@@ -90,7 +90,12 @@ public class PublicVolumeSettings extends SettingsPreferenceFragment {
mVolume = mStorageManager.findVolumeById(volId);
}
- Preconditions.checkNotNull(mVolume);
+ if (mVolume == null) {
+ Log.d(TAG, "Leaving details fragment due to missing volume");
+ finish();
+ return;
+ }
+
Preconditions.checkState(mVolume.getType() == VolumeInfo.TYPE_PUBLIC);
mDisk = mStorageManager.findDiskById(mVolume.getDiskId());