From 6f52ed3332e1e8f13eeb5e95c7439ee5737343bd Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Fri, 14 Aug 2015 09:46:03 -0700 Subject: [PATCH] Only offer migration between private volumes. Without this change, there is a confusing option to migrate a public SD card volume to internal storage, which will always fail if the user picks it, since it's not supported under the hood. Bug: 22966671 Change-Id: Id7cad07eea6583aace398a6d64383bf7d884ae9e --- .../android/settings/deviceinfo/PrivateVolumeSettings.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java b/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java index 4f9b33b7025..779026b1e01 100644 --- a/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java +++ b/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java @@ -354,7 +354,9 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment { // Only offer to migrate when not current storage final VolumeInfo privateVol = getActivity().getPackageManager() .getPrimaryStorageCurrentVolume(); - migrate.setVisible(!Objects.equals(mVolume, privateVol)); + migrate.setVisible((privateVol != null) + && (privateVol.getType() == VolumeInfo.TYPE_PRIVATE) + && !Objects.equals(mVolume, privateVol)); } @Override