make a pipeReadStrict, that properly waits on the process

Nearly everything that's reading from git is operating on a small
amount of output and has been switched to use that. Only pipeNullSplit
stuff continues using the lazy version that yields zombies.
This commit is contained in:
Joey Hess 2012-10-04 18:04:09 -04:00
parent 046f51c93b
commit f67b54e5e3
6 changed files with 36 additions and 18 deletions

View file

@ -116,8 +116,10 @@ checkSuccessProcess pid = do
code <- waitForProcess pid
return $ code == ExitSuccess
ignoreFailureProcess :: ProcessHandle -> IO ()
ignoreFailureProcess = void . waitForProcess
ignoreFailureProcess :: ProcessHandle -> IO Bool
ignoreFailureProcess pid = do
void $ waitForProcess pid
return True
{- Runs createProcess, then an action on its handles, and then
- forceSuccessProcess. -}