Fix crash-on-launch for older installs

populating the de-duping index assumes authorId is always set for
incoming messages, but this was not always the case.

// FREEBIE
pull/1/head
Michael Kirk 8 years ago
parent 0393e4f0b4
commit 1e6925ebc1

@ -78,8 +78,11 @@ NSString *const OWSIncomingMessageFinderColumnSourceDeviceId = @"OWSIncomingMess
if ([object isKindOfClass:[TSIncomingMessage class]]) {
TSIncomingMessage *incomingMessage = (TSIncomingMessage *)object;
// On new messages authorId should be set on all incoming messages, but there was a time when authorId was
// only set on incoming group messages.
NSObject *authorIdOrNull = incomingMessage.authorId ? incomingMessage.authorId : [NSNull null];
[dict setObject:@(incomingMessage.timestamp) forKey:OWSIncomingMessageFinderColumnTimestamp];
[dict setObject:incomingMessage.authorId forKey:OWSIncomingMessageFinderColumnSourceId];
[dict setObject:authorIdOrNull forKey:OWSIncomingMessageFinderColumnSourceId];
[dict setObject:@(incomingMessage.sourceDeviceId) forKey:OWSIncomingMessageFinderColumnSourceDeviceId];
}
};

Loading…
Cancel
Save