Fix link preview crash.

pull/49/head
Mikunj 6 years ago
parent a6aac19c32
commit 8a3bef0738

@ -104,7 +104,7 @@ public final class LokiGroupChatPoller : NSObject {
}
}
// Poll
let _ = LokiGroupChatAPI.getMessages(for: group.serverID, on: group.server).done { messages in
let _ = LokiGroupChatAPI.getMessages(for: group.serverID, on: group.server).done(on: .main) { messages in
messages.reversed().forEach { message in
if message.hexEncodedPublicKey != userHexEncodedPublicKey {
processIncomingMessage(message)

@ -1407,6 +1407,7 @@ NS_ASSUME_NONNULL_BEGIN
[self.primaryStorage setIDForMessageWithServerID:dataMessage.publicChatInfo.serverID to:incomingMessage.uniqueId in:transaction];
}
dispatch_async(dispatch_get_main_queue(), ^{
NSString *url = [OWSLinkPreview previewURLForRawBodyText:incomingMessage.body];
if (url != nil) {
[OWSLinkPreview tryToBuildPreviewInfoObjcWithPreviewUrl:url]
@ -1418,6 +1419,7 @@ NS_ASSUME_NONNULL_BEGIN
}];
});
}
});
return incomingMessage;
}
@ -1505,6 +1507,7 @@ NS_ASSUME_NONNULL_BEGIN
transaction:transaction];
if (linkPreview != nil) {
dispatch_async(dispatch_get_main_queue(), ^{
[OWSLinkPreview tryToBuildPreviewInfoObjcWithPreviewUrl:linkPreview.urlString]
.thenOn(dispatch_get_main_queue(), ^(OWSLinkPreviewDraft *linkPreviewDraft) {
if (linkPreviewDraft.jpegImageData == nil) { return; }
@ -1515,6 +1518,7 @@ NS_ASSUME_NONNULL_BEGIN
[incomingMessage saveWithTransaction:transaction];
}];
});
});
};
return incomingMessage;

@ -1544,7 +1544,7 @@ NSString *const OWSMessageSenderRateLimitedException = @"RateLimitedException";
// A friend request means we don't have a session with the person
// There's no point to check for it
Boolean isFriendRequest = [messageSend.message isKindOfClass:LKFriendRequestMessage.class];
BOOL isFriendRequest = [messageSend.message isKindOfClass:LKFriendRequestMessage.class];
if (!isFriendRequest) {
[self throws_ensureRecipientHasSessionForMessageSend:messageSend deviceId:deviceId];
}

Loading…
Cancel
Save