Ensure there is always a photo and name values deltas
* Don't hard code name mime type when trying to looking
for the entry to write
Bug 25671465
Change-Id: Ie236641a64b195350104e5771ae57b6b7f099ccc
diff --git a/src/com/android/contacts/editor/KindSectionDataList.java b/src/com/android/contacts/editor/KindSectionDataList.java
index 7a7dec2..07c8158 100644
--- a/src/com/android/contacts/editor/KindSectionDataList.java
+++ b/src/com/android/contacts/editor/KindSectionDataList.java
@@ -105,11 +105,13 @@
// Just return the first writable entry.
for (KindSectionData kindSectionData : this) {
if (kindSectionData.getAccountType().areContactsWritable()) {
- RawContactModifier.ensureKindExists(kindSectionData.getRawContactDelta(),
- kindSectionData.getAccountType(),
- ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE);
vlog(mimeType + ": falling back to first kind section data to write");
- return new Pair<>(kindSectionData, kindSectionData.getValuesDeltas().get(0));
+ RawContactModifier.ensureKindExists(kindSectionData.getRawContactDelta(),
+ kindSectionData.getAccountType(), mimeType);
+ if (kindSectionData.getValuesDeltas() != null &&
+ !kindSectionData.getValuesDeltas().isEmpty()) {
+ return new Pair<>(kindSectionData, kindSectionData.getValuesDeltas().get(0));
+ }
}
}