From f48206e37e8a88a2f5f9b019995488696f8bf964 Mon Sep 17 00:00:00 2001 From: Maggie Benthall Date: Tue, 20 Aug 2013 11:03:05 -0400 Subject: [PATCH] Fix NPE in SecuritySettings.onResume() when DISALLOW_CONFIG_CREDENTIALS is true. Bug: 10405192 Change-Id: Id364ba3cd86151b504158bc253559d0da5e26273 --- src/com/android/settings/SecuritySettings.java | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java index f893c3645cd..e5b5c45fff4 100644 --- a/src/com/android/settings/SecuritySettings.java +++ b/src/com/android/settings/SecuritySettings.java @@ -83,7 +83,7 @@ public class SecuritySettings extends RestrictedSettingsFragment private static final String PACKAGE_MIME_TYPE = "application/vnd.android.package-archive"; private PackageManager mPM; - DevicePolicyManager mDPM; + private DevicePolicyManager mDPM; private ChooseLockSettingsHelper mChooseLockSettingsHelper; private LockPatternUtils mLockPatternUtils; @@ -165,9 +165,6 @@ public class SecuritySettings extends RestrictedSettingsFragment // Add options for device encryption - DevicePolicyManager dpm = - (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE); - mIsPrimary = UserHandle.myUserId() == UserHandle.USER_OWNER; if (!mIsPrimary) { @@ -183,7 +180,7 @@ public class SecuritySettings extends RestrictedSettingsFragment } if (mIsPrimary) { - switch (dpm.getStorageEncryptionStatus()) { + switch (mDPM.getStorageEncryptionStatus()) { case DevicePolicyManager.ENCRYPTION_STATUS_ACTIVE: // The device is currently encrypted. addPreferencesFromResource(R.xml.security_settings_encrypted); @@ -247,8 +244,8 @@ public class SecuritySettings extends RestrictedSettingsFragment // Credential storage final UserManager um = (UserManager) getActivity().getSystemService(Context.USER_SERVICE); + mKeyStore = KeyStore.getInstance(); // needs to be initialized for onResume() if (!um.hasUserRestriction(UserManager.DISALLOW_CONFIG_CREDENTIALS)) { - mKeyStore = KeyStore.getInstance(); Preference credentialStorageType = root.findPreference(KEY_CREDENTIAL_STORAGE_TYPE); final int storageSummaryRes =