---Greg Stein wrote:
> Right. But I'm with Ben: an EOF is an EOF. The bucket shouldn't mask over
> that based on how it happened to be read.
>
> If the filter / brigade / whatever, wants to interpret EOF in different ways
> (e.g. make it an EOS), then that is fine. But the bucket shouldn't be used
> as a compensating mechanism for that.

Just a note of caution:  changing a few bucket types (ie, pipe and socket) to
return APR_EOF in this case will break lots of otherwise simple constructs like
this:

    if ((rv=apr_bucket_read(e,&s,&len,APR_BLOCK_READ)) != APR_SUCCESS)
        return rv;

So if we're going to change this behavior, we have to be sure to look through
every use of apr_bucket_read to make sure that the behavior of the caller
remains we want (it certainly wouldn't in this case).

--Cliff

Reply via email to