[Haskell-cafe] runInteractiveCommand: program ends before writing or reading all the output

Ronald Guida oddron at gmail.com
Thu May 15 14:42:31 EDT 2008


It looks like a simple race condition to me.  You are using
"waitForProcess pid" to wait for runInteractiveCommand to finish, but
you don't seem to have anything that waits for createDefFile to
finish.

> main :: IO ()
> main = do
>   (file:_) <- getArgs
>   (_, out, _, pid) <- runInteractiveCommand $ "dumpbin /EXPORTS " ++ file
>   forkIO (createDefFile file out)
>   waitForProcess pid
>   hClose out
>   hFlush stdout


More information about the Haskell-Cafe mailing list