Clean & fix conversation settings crash

pull/15/head
Niels Andriesse 6 years ago
parent fffb55540b
commit b83766ef74

@ -4294,7 +4294,7 @@ typedef enum : NSUInteger {
- (void)acceptFriendRequest:(TSIncomingMessage *)friendRequest
{
[ThreadUtil enqueueFriendRequestAcceptMessageInThread:self.thread];
[ThreadUtil enqueueAcceptFriendRequestMessageInThread:self.thread];
}
- (void)declineFriendRequest:(TSIncomingMessage *)friendRequest

@ -260,7 +260,10 @@ const CGFloat kIconViewLength = 24;
- (void)contactsViewHelperDidUpdateContacts
{
[self updateTableContents];
// Loki: Original code
// ========
// [self updateTableContents];
// ========
}
#pragma mark - View Lifecycle

@ -106,7 +106,8 @@ public class ProfileFetcherJob: NSObject {
self.getAndUpdateProfile(recipientId: recipientId)
}
}
*/
* ================
*/
}
enum ProfileFetcherJobError: Error {

@ -44,7 +44,7 @@ NS_ASSUME_NONNULL_BEGIN
#pragma mark - Durable Message Enqueue
+ (TSOutgoingMessage *)enqueueFriendRequestAcceptMessageInThread:(TSThread *)thread;
+ (TSOutgoingMessage *)enqueueAcceptFriendRequestMessageInThread:(TSThread *)thread;
+ (TSOutgoingMessage *)enqueueMessageWithText:(NSString *)fullMessageText
inThread:(TSThread *)thread

@ -86,9 +86,9 @@ typedef void (^BuildOutgoingMessageCompletionBlock)(TSOutgoingMessage *savedMess
#pragma mark - Durable Message Enqueue
// Loki: TODO We may change this?
+ (TSOutgoingMessage *)enqueueFriendRequestAcceptMessageInThread:(TSThread *)thread
+ (TSOutgoingMessage *)enqueueAcceptFriendRequestMessageInThread:(TSThread *)thread
{
TSOutgoingMessage *message = [TSOutgoingMessage emptyOutgoingMessageInThread:thread];
TSOutgoingMessage *message = [TSOutgoingMessage createEmptyOutgoingMessageInThread:thread];
[self.dbConnection asyncReadWriteWithBlock:^(YapDatabaseReadWriteTransaction *_Nonnull transaction) {
[self.messageSenderJobQueue addMessage:message transaction:transaction];
}];
@ -186,8 +186,8 @@ typedef void (^BuildOutgoingMessageCompletionBlock)(TSOutgoingMessage *savedMess
// Loki: If we're not friends then always set the message to a friend request message
// If we're friends then the assumption is that we have the other user's pre-key bundle
NSString *messageClassString = [thread isFriend] ? @"TSOutgoingMessage" : @"OWSFriendRequestMessage";
Class messageClass = NSClassFromString(messageClassString);
NSString *messageClassAsString = thread.isFriend ? @"TSOutgoingMessage" : @"OWSFriendRequestMessage";
Class messageClass = NSClassFromString(messageClassAsString);
TSOutgoingMessage *message =
[[messageClass alloc] initOutgoingMessageWithTimestamp:[NSDate ows_millisecondTimeStamp]

@ -27,10 +27,10 @@ public class CreatePreKeysOperation: OWSOperation {
self.identityKeyManager.generateNewIdentityKey()
}
/// Loki: We don't generate PreKeyRecords here.
/// This is because we need the records to be linked to a contact since we don't have a central server.
/// It is done automatically when we generate a PreKeyBundle to send to a contact (`generatePreKeyBundleForContact:`).
/// You can use `getOrCreatePreKeyForContact:` to generate one if needed.
// Loki: We don't generate PreKeyRecords here.
// This is because we need the records to be linked to a contact since we don't have a central server.
// It is done automatically when we generate a PreKeyBundle to send to a contact (`generatePreKeyBundleForContact:`).
// You can use `getOrCreatePreKeyForContact:` to generate one if needed.
let signedPreKeyRecord = self.primaryStorage.generateRandomSignedRecord()
signedPreKeyRecord.markAsAcceptedByService()
self.primaryStorage.storeSignedPreKey(signedPreKeyRecord.id, signedPreKeyRecord: signedPreKeyRecord)
@ -40,7 +40,7 @@ public class CreatePreKeysOperation: OWSOperation {
self.reportSuccess()
/* Loki: Original code
* ================
* ================
let identityKey: Data = self.identityKeyManager.identityKeyPair()!.publicKey
let signedPreKeyRecord: SignedPreKeyRecord = self.primaryStorage.generateRandomSignedRecord()
let preKeyRecords: [PreKeyRecord] = self.primaryStorage.generatePreKeyRecords()
@ -60,6 +60,7 @@ public class CreatePreKeysOperation: OWSOperation {
}.catch { error in
self.reportError(error)
}.retainUntilComplete()
*/
* ================
*/
}
}

@ -90,7 +90,8 @@ public class RefreshPreKeysOperation: OWSOperation {
}.catch { error in
self.reportError(error)
}.retainUntilComplete()
*/
* ================
*/
}
public override func didSucceed() {

@ -62,7 +62,8 @@ public class RotateSignedPreKeyOperation: OWSOperation {
}.catch { error in
self.reportError(error)
}.retainUntilComplete()
*/
* ================
*/
}
override public func didFail(error: Error) {

@ -2,7 +2,7 @@
@objc public extension TSOutgoingMessage {
/// Loki: This is a message used to establish sessions
@objc public static func emptyOutgoingMessage(inThread thread: TSThread) -> TSOutgoingMessage {
@objc public static func createEmptyOutgoingMessage(inThread thread: TSThread) -> TSOutgoingMessage {
return TSOutgoingMessage(outgoingMessageWithTimestamp: NSDate.ows_millisecondTimeStamp(),
in: thread,
messageBody: "",

@ -1066,7 +1066,6 @@ NSString *const OWSMessageSenderRateLimitedException = @"RateLimitedException";
hasValidMessageType = [validMessageTypes containsObject:messageType];
/* Loki: Original code:
* ================
hasValidMessageType = ([messageType isEqualToNumber:@(TSEncryptedWhisperMessageType)] ||
[messageType isEqualToNumber:@(TSPreKeyWhisperMessageType)]);
*/
@ -1620,7 +1619,7 @@ NSString *const OWSMessageSenderRateLimitedException = @"RateLimitedException";
__block NSException *_Nullable exception;
/** Loki: Original code
* ==================
* ================
__block dispatch_semaphore_t sema = dispatch_semaphore_create(0);
__block PreKeyBundle *_Nullable bundle;
__block NSException *_Nullable exception;

@ -910,7 +910,7 @@ NSString *const kNSNotification_OWSWebSocketStateDidChange = @"kNSNotification_O
{
OWSAssertIsOnMainThread();
// Loki: Since we don't use web sockets, disable them.
// Loki: Since we don't use web sockets, disable them
return NO;
// Don't open socket in app extensions.

@ -10,7 +10,7 @@ NS_ASSUME_NONNULL_BEGIN
@interface OWSPrimaryStorage (PreKeyStore) <PreKeyStore>
- (NSArray<PreKeyRecord *> *)generatePreKeyRecords;
- (NSArray<PreKeyRecord *> *)generatePreKeyRecords:(NSUInteger)batchSize;
- (NSArray<PreKeyRecord *> *)generatePreKeyRecords:(int)batchSize;
- (void)storePreKeyRecords:(NSArray<PreKeyRecord *> *)preKeyRecords NS_SWIFT_NAME(storePreKeyRecords(_:));
@end

@ -23,7 +23,7 @@ NS_ASSUME_NONNULL_BEGIN
return [self generatePreKeyRecords:BATCH_SIZE];
}
- (NSArray<PreKeyRecord *> *)generatePreKeyRecords:(NSUInteger)batchSize
- (NSArray<PreKeyRecord *> *)generatePreKeyRecords:(int)batchSize
{
NSMutableArray *preKeyRecords = [NSMutableArray array];

Loading…
Cancel
Save