diff --git a/Signal/src/views/ContactCell.swift b/Signal/src/views/ContactCell.swift index 7c02d885b..0a841f0fb 100644 --- a/Signal/src/views/ContactCell.swift +++ b/Signal/src/views/ContactCell.swift @@ -92,7 +92,7 @@ class ContactCell: UITableViewCell { diameter: ContactCell.kAvatarDiameter, contactsManager: contactsManager) - contactImageView.image = avatarBuilder.buildDefaultImage() + contactImageView.image = avatarBuilder.build() } } diff --git a/SignalMessaging/contacts/OWSContactsManager.m b/SignalMessaging/contacts/OWSContactsManager.m index 5f0ddc19f..44c8a1111 100644 --- a/SignalMessaging/contacts/OWSContactsManager.m +++ b/SignalMessaging/contacts/OWSContactsManager.m @@ -724,6 +724,10 @@ NSString *const OWSContactsManagerSignalAccountsDidChangeNotification - (UIImage *_Nullable)systemContactImageForPhoneIdentifier:(NSString *_Nullable)identifier { + if (identifier.length == 0) { + return nil; + } + Contact *contact = self.allContactsMap[identifier]; if (!contact) { // If we haven't loaded system contacts yet, we may have a cached @@ -736,16 +740,28 @@ NSString *const OWSContactsManagerSignalAccountsDidChangeNotification - (nullable UIImage *)profileImageForPhoneIdentifier:(nullable NSString *)identifier { + if (identifier.length == 0) { + return nil; + } + return [self.profileManager profileAvatarForRecipientId:identifier]; } - (nullable NSData *)profileImageDataForPhoneIdentifier:(nullable NSString *)identifier { + if (identifier.length == 0) { + return nil; + } + return [self.profileManager profileAvatarDataForRecipientId:identifier]; } - (UIImage *_Nullable)imageForPhoneIdentifier:(NSString *_Nullable)identifier { + if (identifier.length == 0) { + return nil; + } + // Prefer the contact image from the local address book if available UIImage *_Nullable image = [self systemContactImageForPhoneIdentifier:identifier];