On Thu, Feb 4, 2016 at 9:54 AM, Yann Ylavic <ylavic....@gmail.com> wrote:
> On Thu, Feb 4, 2016 at 9:41 AM, Yann Ylavic <ylavic....@gmail.com> wrote:
>> Doesn't the socket_bucket_read() call (frame #3) enter
>> apr_socket_timeout_set(p, 0), and hence sononblock() which puts the
>> socket in O_NONBLOCK?
>
> and resets APR_INCOMPLETE_READ.

Would this help?

Index: srclib/apr/buckets/apr_buckets_socket.c
===================================================================
--- srclib/apr/buckets/apr_buckets_socket.c     (revision 1568989)
+++ srclib/apr/buckets/apr_buckets_socket.c     (working copy)
@@ -26,7 +26,10 @@ static apr_status_t socket_bucket_read(apr_bucket

     if (block == APR_NONBLOCK_READ) {
         apr_socket_timeout_get(p, &timeout);
-        apr_socket_timeout_set(p, 0);
+        rv = apr_socket_timeout_set(p, 0);
+        if (rv != APR_SUCCESS) {
+            return rv;
+        }
     }

     *str = NULL;
--

Reply via email to