Fix note to self

pull/63/head
Niels Andriesse 6 years ago
parent 41484c2910
commit dc906263cc

@ -448,7 +448,7 @@ NSString *const OWSMessageContentJobFinderExtensionGroup = @"OWSMessageContentJo
transaction:transaction]; transaction:transaction];
} }
} @catch (NSException *exception) { } @catch (NSException *exception) {
OWSFailDebug(@"Received an invalid envelope: %@", exception.debugDescription); // OWSFailDebug(@"Received an invalid envelope: %@", exception.debugDescription);
reportFailure(transaction); reportFailure(transaction);
} }
[processedJobs addObject:job]; [processedJobs addObject:job];

@ -500,12 +500,10 @@ NSString *const OWSMessageSenderRateLimitedException = @"RateLimitedException";
__block NSMutableSet<NSString *> *recipientIds = [NSMutableSet new]; __block NSMutableSet<NSString *> *recipientIds = [NSMutableSet new];
if ([message isKindOfClass:[OWSOutgoingSyncMessage class]]) { if ([message isKindOfClass:[OWSOutgoingSyncMessage class]]) {
NSString *userHexEncodedPublicKey = OWSIdentityManager.sharedManager.identityKeyPair.hexEncodedPublicKey;
[OWSPrimaryStorage.sharedManager.dbReadWriteConnection readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { [OWSPrimaryStorage.sharedManager.dbReadWriteConnection readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) {
NSString *userHexEncodedPublicKey = OWSIdentityManager.sharedManager.identityKeyPair.hexEncodedPublicKey;
NSString *masterHexEncodedPublicKey = [LKDatabaseUtilities getMasterHexEncodedPublicKeyFor:userHexEncodedPublicKey in:transaction] ?: userHexEncodedPublicKey; NSString *masterHexEncodedPublicKey = [LKDatabaseUtilities getMasterHexEncodedPublicKeyFor:userHexEncodedPublicKey in:transaction] ?: userHexEncodedPublicKey;
NSMutableSet<NSString *> *linkedDeviceHexEncodedPublicKeys = [LKDatabaseUtilities getLinkedDeviceHexEncodedPublicKeysFor:userHexEncodedPublicKey in:transaction].mutableCopy; recipientIds = [LKDatabaseUtilities getLinkedDeviceHexEncodedPublicKeysFor:userHexEncodedPublicKey in:transaction].mutableCopy;
[linkedDeviceHexEncodedPublicKeys removeObject:userHexEncodedPublicKey];
recipientIds = [recipientIds setByAddingObjectsFromSet:linkedDeviceHexEncodedPublicKeys].mutableCopy;
}]; }];
} else if (thread.isGroupThread) { } else if (thread.isGroupThread) {
[self.primaryStorage.dbReadConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) { [self.primaryStorage.dbReadConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) {
@ -1567,7 +1565,16 @@ NSString *const OWSMessageSenderRateLimitedException = @"RateLimitedException";
return success(); return success();
} }
BOOL shouldSendTranscript = (AreRecipientUpdatesEnabled() || !message.hasSyncedTranscript); // Loki: Handle note to self case
__block BOOL isNoteToSelf = NO;
[self.dbConnection readWithBlock:^(YapDatabaseReadTransaction *transaction) {
TSThread *thread = message.thread;
if (thread && [thread isKindOfClass:[TSContactThread class]] && [LKDatabaseUtilities isUserLinkedDevice:thread.contactIdentifier in:transaction]) {
isNoteToSelf = YES;
}
}];
BOOL shouldSendTranscript = (AreRecipientUpdatesEnabled() || !message.hasSyncedTranscript) && !isNoteToSelf;
if (!shouldSendTranscript) { if (!shouldSendTranscript) {
return success(); return success();
} }
@ -1642,6 +1649,7 @@ NSString *const OWSMessageSenderRateLimitedException = @"RateLimitedException";
messageSend.isUDSend); messageSend.isUDSend);
NSString *userHexEncodedPublicKey = OWSIdentityManager.sharedManager.identityKeyPair.hexEncodedPublicKey; NSString *userHexEncodedPublicKey = OWSIdentityManager.sharedManager.identityKeyPair.hexEncodedPublicKey;
__block NSMutableSet<NSString *> *recipientIDs = [NSSet setWithObject:recipient.uniqueId]; __block NSMutableSet<NSString *> *recipientIDs = [NSSet setWithObject:recipient.uniqueId];
if ([messageSend.message isKindOfClass:OWSOutgoingSyncMessage.class]) { if ([messageSend.message isKindOfClass:OWSOutgoingSyncMessage.class]) {
[OWSPrimaryStorage.sharedManager.dbReadWriteConnection readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) { [OWSPrimaryStorage.sharedManager.dbReadWriteConnection readWriteWithBlock:^(YapDatabaseReadWriteTransaction *transaction) {

Loading…
Cancel
Save