From 4b7e4ac2c70bb657d9fc0e1bb6816d10b640018d Mon Sep 17 00:00:00 2001 From: Ali <> Date: Thu, 4 Nov 2021 21:11:01 +0400 Subject: [PATCH] Fix excessive looping in mark all unseen code --- ...nchronizeMarkAllUnseenPersonalMessagesOperations.swift | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/submodules/TelegramCore/Sources/State/ManagedSynchronizeMarkAllUnseenPersonalMessagesOperations.swift b/submodules/TelegramCore/Sources/State/ManagedSynchronizeMarkAllUnseenPersonalMessagesOperations.swift index bdbf6a3984..ccee06a92a 100644 --- a/submodules/TelegramCore/Sources/State/ManagedSynchronizeMarkAllUnseenPersonalMessagesOperations.swift +++ b/submodules/TelegramCore/Sources/State/ManagedSynchronizeMarkAllUnseenPersonalMessagesOperations.swift @@ -181,8 +181,12 @@ private func synchronizeMarkAllUnseen(transaction: Transaction, postbox: Postbox ) |> mapToSignal { resultId -> Signal in if let resultId = resultId { - let _ = currentMaxId.swap(resultId) - return .complete() + let previous = currentMaxId.swap(resultId) + if previous == resultId { + return .fail(.done) + } else { + return .complete() + } } else { return .fail(.done) }