- errSinkThread <- forkIO $ forever $ hGetLine serverErr
-
- pid <- fromIntegral . fromJust <$> getPid serverProc
-
- result <- f serverIn serverOut pid
-
- killThread errSinkThread
- terminateProcess serverProc
- return result
\ No newline at end of file
+ hSetBinaryMode serverErr True
+ let errSinkThread = forever $ hGetLine serverErr >>= when logStdErr . putStrLn
+ withAsync errSinkThread $ \_ -> do
+ f serverIn serverOut serverProc