X-Git-Url: http://git.lukelau.me/?p=lsp-test.git;a=blobdiff_plain;f=src%2FLanguage%2FHaskell%2FLSP%2FTest%2FServer.hs;h=bd5bdb959f670652a5e910d5d0942b43fcb0c494;hp=7d00f2382900e454b5b67b32de1a33ffc71a4caa;hb=5732d9891b7515251ba3fd66269c21d63ed12c79;hpb=1519d72b72435e798b02bb698eccab8f9683dec1 diff --git a/src/Language/Haskell/LSP/Test/Server.hs b/src/Language/Haskell/LSP/Test/Server.hs index 7d00f23..bd5bdb9 100644 --- a/src/Language/Haskell/LSP/Test/Server.hs +++ b/src/Language/Haskell/LSP/Test/Server.hs @@ -1,6 +1,7 @@ module Language.Haskell.LSP.Test.Server (withServer) where import Control.Concurrent +import Control.Exception import Control.Monad import Language.Haskell.LSP.Test.Compat import System.IO @@ -21,8 +22,6 @@ withServer serverExe logStdErr f = do pid <- getProcessID serverProc - result <- f serverIn serverOut pid - + finally (f serverIn serverOut pid) $ do killThread errSinkThread terminateProcess serverProc - return result