On Fri, Apr 06, 2007 at 01:44:01PM -0600, Scott Bell wrote: > Ooops! It seems that this doesn't behave well with a -threaded > RTS. I get an EOF on handles that I know for a fact shouldn't > be receiving them. It still works well without -threaded, but > does anyone know why I'm getting this behavior? > > hGetContentsTimeout :: Handle -> Int -> IO String > hGetContentsTimeout h t = do > hSetBuffering stdin NoBuffering > ready <- hWaitForInput h t > if (not ready) then return [] > else do > c <- hGetChar h > s <- unsafeInterleaveIO (hGetContentsTimeout h t) > return (c:s) > > (I did add EOF checking, but all that did was return the end of the > list earlier than I wanted)
Have you got a complete (but preferably small) program showing the problem? Thanks Ian _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe