diff --git a/submodules/TelegramCore/Sources/UpdatePeers.swift b/submodules/TelegramCore/Sources/UpdatePeers.swift index d18cb74f57..88e4771928 100644 --- a/submodules/TelegramCore/Sources/UpdatePeers.swift +++ b/submodules/TelegramCore/Sources/UpdatePeers.swift @@ -59,12 +59,13 @@ public func updatePeers(transaction: Transaction, peers: [Peer], update: (Peer?, var (state, peerIds) = transaction.getAllStorySubscriptions(key: .filtered) peerIds.removeAll(where: { $0 == updated.id }) transaction.replaceAllStorySubscriptions(key: .filtered, state: state, peerIds: peerIds) - } - if !transaction.storySubscriptionsContains(key: .hidden, peerId: updated.id) { - var (state, peerIds) = transaction.getAllStorySubscriptions(key: .hidden) - if !peerIds.contains(updated.id) { - peerIds.append(updated.id) - transaction.replaceAllStorySubscriptions(key: .hidden, state: state, peerIds: peerIds) + + if !transaction.storySubscriptionsContains(key: .hidden, peerId: updated.id) { + var (state, peerIds) = transaction.getAllStorySubscriptions(key: .hidden) + if !peerIds.contains(updated.id) { + peerIds.append(updated.id) + transaction.replaceAllStorySubscriptions(key: .hidden, state: state, peerIds: peerIds) + } } } } else { @@ -72,12 +73,13 @@ public func updatePeers(transaction: Transaction, peers: [Peer], update: (Peer?, var (state, peerIds) = transaction.getAllStorySubscriptions(key: .hidden) peerIds.removeAll(where: { $0 == updated.id }) transaction.replaceAllStorySubscriptions(key: .hidden, state: state, peerIds: peerIds) - } - if !transaction.storySubscriptionsContains(key: .filtered, peerId: updated.id) { - var (state, peerIds) = transaction.getAllStorySubscriptions(key: .filtered) - if !peerIds.contains(updated.id) { - peerIds.append(updated.id) - transaction.replaceAllStorySubscriptions(key: .filtered, state: state, peerIds: peerIds) + + if !transaction.storySubscriptionsContains(key: .filtered, peerId: updated.id) { + var (state, peerIds) = transaction.getAllStorySubscriptions(key: .filtered) + if !peerIds.contains(updated.id) { + peerIds.append(updated.id) + transaction.replaceAllStorySubscriptions(key: .filtered, state: state, peerIds: peerIds) + } } } }