26 lines
1.1 KiB
Diff
26 lines
1.1 KiB
Diff
# UNDF: UNDF-2026-000000831
|
|
# UNDF: (pending)
|
|
--- a/src/Simplex/Chat/Library/Internal.hs
|
|
+++ b/src/Simplex/Chat/Library/Internal.hs
|
|
@@ -30,6 +30,7 @@ import Control.Monad.Except
|
|
import Data.Bifunctor (bimap, first)
|
|
import Data.Fixed (Fixed (..))
|
|
import Data.List (find, foldl', mapAccumL, partition)
|
|
+import qualified Data.Set as S
|
|
import Data.Map.Strict (Map)
|
|
import qualified Data.Map.Strict as M
|
|
...
|
|
@@ -1064,9 +1064,11 @@ introduceToRemaining vr user gInfo m = do
|
|
(members, introducedGMIds) <-
|
|
withStore' $ \db -> (,) <$> getGroupMembers db vr user gInfo <*> getIntroducedGroupMemberIds db m
|
|
- let recipients = filter (introduceMemP introducedGMIds) members
|
|
+ let introducedSet = S.fromList introducedGMIds
|
|
+ recipients = filter (introduceMemP introducedSet) members
|
|
introduceMember vr user gInfo m recipients Nothing
|
|
where
|
|
- introduceMemP introducedGMIds mem =
|
|
+ introduceMemP introducedSet mem =
|
|
memberCurrent mem
|
|
- && groupMemberId' mem `notElem` introducedGMIds
|
|
+ && groupMemberId' mem `S.notMember` introducedSet
|
|
&& groupMemberId' mem /= groupMemberId' m
|