network-messagepack-rpc 0.1.1.1 → 0.1.1.2
raw patch · 2 files changed
+4/−9 lines, 2 files
Files
network-messagepack-rpc.cabal view
@@ -1,5 +1,5 @@ name: network-messagepack-rpc-version: 0.1.1.1+version: 0.1.1.2 synopsis: MessagePack RPC description: [MessagePack RPC](https://github.com/msgpack-rpc/msgpack-rpc/blob/master/spec.md) library based on the "data-msgpack" package. homepage: https://github.com/iij-ii/direct-hs/tree/master/network-messagepack-rpc
src/Network/MessagePack/RPC/Client.hs view
@@ -23,17 +23,12 @@ ) where -import Control.Concurrent (ThreadId, forkFinally, forkIO,- killThread)-import Control.Concurrent.MVar (MVar)+import Control.Concurrent (forkFinally, forkIO, killThread) import qualified Control.Concurrent.MVar as MVar import qualified Control.Exception.Safe as E import Control.Monad (forever, void, when)-import qualified Data.ByteString as B import qualified Data.ByteString.Lazy as BL-import Data.HashMap.Strict (HashMap) import qualified Data.HashMap.Strict as HM-import Data.IORef (IORef) import qualified Data.IORef as IORef import qualified Data.MessagePack as MsgPack import Data.Monoid ((<>))@@ -188,12 +183,12 @@ tid <- forkFinally (receiverThread client config) $ \_ -> MVar.putMVar wait () IORef.writeIORef tidref $ Just tid- takeAction client wait `E.finally` killThread tid+ takeAction client wait+ `E.finally` (backendClose backend >> killThread tid) where takeAction client wait = do returned <- action client when (waitRequestHandler config) $ MVar.takeMVar wait- backendClose backend return returned -- | This function cleans up the internal states including