Fix profile updating issue

pull/364/head
Niels Andriesse 4 years ago
parent 0d5a932a50
commit b023b1be94

@ -14,9 +14,16 @@ extension Storage {
@objc(setContact:usingTransaction:)
public func setContact(_ contact: Contact, using transaction: Any) {
(transaction as! YapDatabaseReadWriteTransaction).setObject(contact, forKey: contact.sessionID, inCollection: Storage.contactCollection)
DispatchQueue.main.async {
NotificationCenter.default.post(name: .contactUpdated, object: contact.sessionID)
let transaction = transaction as! YapDatabaseReadWriteTransaction
transaction.setObject(contact, forKey: contact.sessionID, inCollection: Storage.contactCollection)
transaction.addCompletionQueue(DispatchQueue.main) {
let notificationCenter = NotificationCenter.default
notificationCenter.post(name: .contactUpdated, object: contact.sessionID)
if contact.sessionID == getUserHexEncodedPublicKey() {
notificationCenter.post(name: Notification.Name(kNSNotificationName_LocalProfileDidChange), object: nil)
} else {
notificationCenter.post(name: Notification.Name(kNSNotificationName_OtherUsersProfileDidChange), object: nil)
}
}
}

@ -206,9 +206,6 @@ extension MessageReceiver {
}
userProfile.save(with: transaction)
Storage.shared.setContact(user, using: transaction)
transaction.addCompletionQueue(DispatchQueue.main) {
NotificationCenter.default.post(name: Notification.Name(kNSNotificationName_LocalProfileDidChange), object: nil)
}
transaction.addCompletionQueue(DispatchQueue.main) {
SSKEnvironment.shared.profileManager.downloadAvatar(for: userProfile)
}

Loading…
Cancel
Save