diff --git a/src/com/android/settings/TrustedCredentialsSettings.java b/src/com/android/settings/TrustedCredentialsSettings.java index c630ed6c370..4100e75b58f 100644 --- a/src/com/android/settings/TrustedCredentialsSettings.java +++ b/src/com/android/settings/TrustedCredentialsSettings.java @@ -695,16 +695,18 @@ public class TrustedCredentialsSettings extends OptionsMenuFragment for (int i = 0; i < n; ++i) { UserHandle profile = profiles.get(i); int profileId = profile.getIdentifier(); - if (shouldSkipProfile(profile)) { - certHoldersByProfile.put(profileId, new ArrayList(0)); - continue; - } List aliases = aliasesByProfileId.get(profileId); if (isCancelled()) { return new SparseArray>(); } - IKeyChainService service = mKeyChainConnectionByProfileId.get(profileId) - .getService(); + KeyChainConnection keyChainConnection = mKeyChainConnectionByProfileId.get( + profileId); + if (shouldSkipProfile(profile) || aliases == null + || keyChainConnection == null) { + certHoldersByProfile.put(profileId, new ArrayList(0)); + continue; + } + IKeyChainService service = keyChainConnection.getService(); List certHolders = new ArrayList(max); final int aliasMax = aliases.size(); for (int j = 0; j < aliasMax; ++j) {