Merge "Temp fix for NPE when race condition happens in TrustedCredentialsSettings" into nyc-dev

am: 99a88eca78

* commit '99a88eca7840af3cee8ab13a82c12e3217ea6120':
  Temp fix for NPE when race condition happens in TrustedCredentialsSettings

Change-Id: I77209cdef4dc285e36d3c632acc3fa6cd9ee1bbf
This commit is contained in:
Victor Chang
2016-05-20 17:34:08 +00:00
committed by android-build-merger

View File

@@ -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<CertHolder>(0));
continue;
}
List<ParcelableString> aliases = aliasesByProfileId.get(profileId);
if (isCancelled()) {
return new SparseArray<List<CertHolder>>();
}
IKeyChainService service = mKeyChainConnectionByProfileId.get(profileId)
.getService();
KeyChainConnection keyChainConnection = mKeyChainConnectionByProfileId.get(
profileId);
if (shouldSkipProfile(profile) || aliases == null
|| keyChainConnection == null) {
certHoldersByProfile.put(profileId, new ArrayList<CertHolder>(0));
continue;
}
IKeyChainService service = keyChainConnection.getService();
List<CertHolder> certHolders = new ArrayList<CertHolder>(max);
final int aliasMax = aliases.size();
for (int j = 0; j < aliasMax; ++j) {