packages feed

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