]> granicus.if.org Git - apache/commitdiff
Check return value from ap_pass_brigade incase we are buffering and a client disconnects.
authorPaul Querna <pquerna@apache.org>
Tue, 1 Sep 2009 09:30:36 +0000 (09:30 +0000)
committerPaul Querna <pquerna@apache.org>
Tue, 1 Sep 2009 09:30:36 +0000 (09:30 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@809928 13f79535-47bb-0310-9956-ffa450edef68

modules/filters/mod_buffer.c

index f7e15a52e86f2da6c9c582b4a21014827990d899..c7c471c9395a2e6de54b30c2f5040365c0bad034 100644 (file)
@@ -140,6 +140,11 @@ static apr_status_t buffer_out_filter(ap_filter_t *f, apr_bucket_brigade *bb) {
 
             /* pass what we have down the chain */
             rv = ap_pass_brigade(f->next, ctx->bb);
+            if (rv) {
+                /* should break out of the loop, since our write to the client 
+                 * failed in some way. */
+                continue;
+            }
         }
 
         /* at this point we are ready to buffer.