From c329ed556cb9c4c24b3b9f7269fcaa6fad923b0c Mon Sep 17 00:00:00 2001 From: Tissevert Date: Mon, 23 Dec 2019 09:23:32 +0100 Subject: [PATCH] Stop broadcasting to clients not yet logged in --- src/Messaging.hs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Messaging.hs b/src/Messaging.hs index 5545565..a4bd1b6 100644 --- a/src/Messaging.hs +++ b/src/Messaging.hs @@ -27,7 +27,7 @@ import Hanafuda.Message (FromClient(..), T(..)) import qualified Hanafuda.Message as Message (T) import Network.WebSockets (receiveData, sendTextData) import Player (playerID, showDebug) -import qualified Server (T(..), sessionsWhere) +import qualified Server (sessionsWhere) import qualified Session (T(..)) sendToSessions :: [Session.T] -> Message.T -> App.T () @@ -52,7 +52,9 @@ send obj = do broadcast :: Message.T -> App.T () broadcast obj = do - App.get (elems . Server.sessions) >>= flip sendToSessions obj + App.get (concat . elems . allSessions) >>= flip sendToSessions obj + where + allSessions = Server.sessionsWhere (\_ _ -> True) relay :: FromClient -> (Message.T -> App.T ()) -> App.T () relay message f = do