gameServer/ClientIO.hs
changeset 7390 27bfd8bbde7e
parent 7388 92535bc7e928
child 8371 0551b5c3de9a
equal deleted inserted replaced
7386:e82a076df09b 7390:27bfd8bbde7e
    64 
    64 
    65     when (isQuit answer) $
    65     when (isQuit answer) $
    66         killReciever . B.unpack $ quitMessage answer
    66         killReciever . B.unpack $ quitMessage answer
    67 
    67 
    68     Exception.handle
    68     Exception.handle
    69         (\(e :: Exception.IOException) -> unless (isQuit answer) . killReciever $ show e) $
    69         (\(e :: Exception.SomeException) -> unless (isQuit answer) . killReciever $ show e) $
    70             sendAll s $ B.unlines answer `B.snoc` '\n'
    70             sendAll s $ B.unlines answer `B.snoc` '\n'
    71 
    71 
    72     if isQuit answer then
    72     if isQuit answer then
    73         do
    73         sClose s
    74         Exception.handle (\(_ :: Exception.IOException) -> putStrLn "error on sClose") $ sClose s
       
    75         else
    74         else
    76         clientSendLoop s tId chan ci
    75         clientSendLoop s tId chan ci
    77 
    76 
    78     where
    77     where
    79         killReciever = Exception.throwTo tId . ShutdownThreadException
    78         killReciever = Exception.throwTo tId . ShutdownThreadException