Small fixes.

This commit is contained in:
Matthew Chen 2021-05-26 11:35:03 -03:00
parent 3e681607ce
commit 07ccacf60c
2 changed files with 21 additions and 6 deletions

View File

@ -556,10 +556,12 @@ public final class CallService: NSObject {
// MARK: -
private func updateGroupMembersForCurrentCallIfNecessary() {
guard let call = currentCall, call.isGroupCall,
let groupThread = call.thread as? TSGroupThread,
let memberInfo = groupMemberInfo(for: groupThread) else { return }
call.groupCall.updateGroupMembers(members: memberInfo)
DispatchQueue.main.async {
guard let call = self.currentCall, call.isGroupCall,
let groupThread = call.thread as? TSGroupThread,
let memberInfo = self.groupMemberInfo(for: groupThread) else { return }
call.groupCall.updateGroupMembers(members: memberInfo)
}
}
private func groupMemberInfo(for thread: TSGroupThread) -> [GroupMemberInfo]? {
@ -701,6 +703,7 @@ extension CallService {
@objc @available(swift, obsoleted: 1.0)
func peekCallAndUpdateThread(_ thread: TSGroupThread) {
AssertIsOnMainThread()
self.peekCallAndUpdateThread(thread)
}
@ -716,9 +719,14 @@ extension CallService {
Logger.info("Ignoring peek request for the current call")
return
}
firstly(on: .global()) {
firstly(on: .main) { () -> [GroupMemberInfo]? in
guard let memberInfo = self.groupMemberInfo(for: thread) else {
owsFailDebug("Failed to fetch group member info to peek \(thread.uniqueId)")
return nil
}
return memberInfo
}.map(on: .global()) { (memberInfo: [GroupMemberInfo]?) in
guard let memberInfo = memberInfo else {
return
}

View File

@ -699,7 +699,14 @@ public class StickerManager: NSObject {
try OWSFileSystem.deleteFileIfExists(url: stickerDataUrl)
try FileManager.default.copyItem(at: stickerTemporaryUrl, to: stickerDataUrl)
} catch let error as NSError {
owsFailDebug("File write failed: \(error)")
if error.domain == NSCocoaErrorDomain,
error.code == 516,
OWSFileSystem.fileOrFolderExists(url: stickerDataUrl) {
// Races can occur.
Logger.warn("File already exists: \(error)")
} else {
owsFailDebug("File write failed: \(error)")
}
return false
}