Author: rhuijben
Date: Wed Nov 25 00:28:52 2015
New Revision: 1716283

URL: http://svn.apache.org/viewvc?rev=1716283&view=rev
Log:
* buckets/prefix_buckets.c
  (read_prefix): Don't return EAGAIN when the bucket can be read again now.

Modified:
    serf/trunk/buckets/prefix_buckets.c

Modified: serf/trunk/buckets/prefix_buckets.c
URL: 
http://svn.apache.org/viewvc/serf/trunk/buckets/prefix_buckets.c?rev=1716283&r1=1716282&r2=1716283&view=diff
==============================================================================
--- serf/trunk/buckets/prefix_buckets.c (original)
+++ serf/trunk/buckets/prefix_buckets.c Wed Nov 25 00:28:52 2015
@@ -65,8 +65,11 @@ static apr_status_t read_prefix(serf_buc
     if (!ctx->read_len) {
 
         /* Perhaps we can handle this without copying any data? */
-        status = serf_bucket_read(ctx->stream, ctx->prefix_len, &data,
-                                  &len);
+        do
+        {
+            status = serf_bucket_read(ctx->stream, ctx->prefix_len, &data,
+                                      &len);
+        } while (!status && !len);
 
         if (SERF_BUCKET_READ_ERROR(status))
             return status;
@@ -87,7 +90,7 @@ static apr_status_t read_prefix(serf_buc
         }
         else if (len == 0) {
             /* Nothing read at all. Try again later */
-            return APR_EAGAIN;
+            return status;
         }
 
         /* Create a buffer to hold what we already read */


Reply via email to