On Wed, Jul 25, 2001 at 09:16:28PM -0400, Jeff Trawick wrote:
> no, not a problem.
>
> When EAGAIN sends something we promptly set rv to 0 so we avoid the
> wait_for_io_or_timeout()/re-try path.
>
> There is no need to adjust the parameters since we do
> wait_for_io_or_timeout()/retry *only* if we didn't send anything the
> first time. This is the same way the other send-type calls work in
> APR.
Yeah, I see that now. I'll blame the bad bandwidth at the O'Reilly
conference for causing me not to see that...
But, that's an awful lot of extra code. Couldn't we somehow
consolidate the logic? Maybe loop when:
rv == -1 && (errno == EAGAIN || errno == EINTR)?
I'll look at it in the morning and see if I can come up with anything
obvious. This duplication just rubs me the wrong way. =) -- justin