<div class="gmail_quote">On Sat, Nov 27, 2010 at 9:05 PM, wren ng thornton <span dir="ltr">&lt;<a href="mailto:wren@freegeek.org">wren@freegeek.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
So I&#39;ve just started playing around with STM and -threaded programs and I&#39;ve run into a bug. The bug is similar to [1] except that the file in question is a Posix FIFO instead of a Bluetooth device. Same behavior: always errors with -threaded, but expected behavior when not -threaded (i.e., blocks until another process opens the other end of the FIFO). GHC version is 6.12.1.<br>
</blockquote><div><br></div><div>Isn&#39;t that pretty normal? Just retry if you get EINTR, that&#39;s what throwErrnoIfMinus1 and friends are for:</div><div><br></div><div><meta http-equiv="content-type" content="text/html; charset=utf-8"><a href="http://www.haskell.org/ghc/docs/6.12.2/html/libraries/base-4.2.0.1/Foreign-C-Error.html#v%3AthrowErrnoIfRetryMayBlock">http://www.haskell.org/ghc/docs/6.12.2/html/libraries/base-4.2.0.1/Foreign-C-Error.html#v%3AthrowErrnoIfRetryMayBlock</a></div>
</div>