From 3657f4643067ae95b11b83f9457eacd782a79133 Mon Sep 17 00:00:00 2001 From: Luke Lau Date: Tue, 7 Aug 2018 19:48:37 +0100 Subject: [PATCH] Kill process even if exception is thrown --- src/Language/Haskell/LSP/Test/Server.hs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) 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 -- 2.30.2