X-Git-Url: http://git.lukelau.me/?a=blobdiff_plain;f=src%2FLanguage%2FHaskell%2FLSP%2FTest%2FServer.hs;h=e66ed0adb9fbfbb221ec030a7590b625b0d7b46a;hb=d7dc40224e71d16d319f725556e217c0343cee18;hp=5449dfbbf40317aae94ba65a17ef9d169dc08a6b;hpb=1adde1719ac7eed4176b5448069e901bdbeb5728;p=lsp-test.git diff --git a/src/Language/Haskell/LSP/Test/Server.hs b/src/Language/Haskell/LSP/Test/Server.hs index 5449dfb..e66ed0a 100644 --- a/src/Language/Haskell/LSP/Test/Server.hs +++ b/src/Language/Haskell/LSP/Test/Server.hs @@ -4,9 +4,9 @@ import Control.Concurrent.Async import Control.Monad import Language.Haskell.LSP.Test.Compat import System.IO -import System.Process +import System.Process hiding (withCreateProcess) -withServer :: String -> Bool -> (Handle -> Handle -> Int -> IO a) -> IO a +withServer :: String -> Bool -> (Handle -> Handle -> ProcessHandle -> IO a) -> IO a withServer serverExe logStdErr f = do -- TODO Probably should just change runServer to accept -- separate command and arguments @@ -19,5 +19,4 @@ withServer serverExe logStdErr f = do hSetBinaryMode serverErr True let errSinkThread = forever $ hGetLine serverErr >>= when logStdErr . putStrLn withAsync errSinkThread $ \_ -> do - pid <- getProcessID serverProc - f serverIn serverOut pid + f serverIn serverOut serverProc