Trying to fix a bug in BeOS, I came across this... Setting the pipe attributes by default sets the timeout to zero which in the apr_file_pipe_timeout_set sets the pipe to non-blocking with a timeout of 0 (infinite timeout?). In this state EWOULDBLOCK is likely, but in readwrite.c we check for this with an exra check that timeout != 0, hence the EWOULDBLOCK isn't trapped but rather returned as an error.
Am I missing some aspect of this that's desirable? david
