@@ -792,10 +792,10 @@ forkForwardsTo = \to encryptedBlob servers -> forEach servers (\server -> do
792792 *forwards = remaining
793793 pres <- *presence
794794 let stillLocal = hasLocalPresence pres to t
795− let othersPending = any (\x -> x.encryptedBlob == encryptedBlob) remaining
795+ let othersPending = any (\x -> x.toKey == to && x.encryptedBlob == encryptedBlob) remaining
796796 when (not (stillLocal || othersPending)) (do
797797 msgs <- *messages
798− *messages = filter (\m -> m.encryptedBlob != encryptedBlob) msgs)))
798+ *messages = filter (\m -> not (m.toKey == to && m.encryptedBlob == encryptedBlob)) msgs)))
799799
800800-- ============================================
801801-- Handler: federation receive