httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From minf...@apache.org
Subject svn commit: r718132 - in /httpd/httpd/trunk: CHANGES modules/filters/mod_buffer.c
Date Sun, 16 Nov 2008 22:41:53 GMT
Author: minfrin
Date: Sun Nov 16 14:41:53 2008
New Revision: 718132

URL: http://svn.apache.org/viewvc?rev=718132&view=rev
Log:
mod_buffer: Honour the flush bucket and flush the buffer in the
input filter. Make sure that metadata buckets are written to
the buffer, not to the final brigade.

Modified:
    httpd/httpd/trunk/CHANGES
    httpd/httpd/trunk/modules/filters/mod_buffer.c

Modified: httpd/httpd/trunk/CHANGES
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/CHANGES?rev=718132&r1=718131&r2=718132&view=diff
==============================================================================
--- httpd/httpd/trunk/CHANGES [utf-8] (original)
+++ httpd/httpd/trunk/CHANGES [utf-8] Sun Nov 16 14:41:53 2008
@@ -2,6 +2,10 @@
 Changes with Apache 2.3.0
 [ When backported to 2.2.x, remove entry from this file ]
 
+  *) mod_buffer: Honour the flush bucket and flush the buffer in the
+     input filter. Make sure that metadata buckets are written to
+     the buffer, not to the final brigade. [Graham Leggett]
+
   *) mod_buffer: Optimise the buffering of heap buckets when the heap
      buckets stay exactly APR_BUCKET_BUFF_SIZE long. [Graham Leggett,
      Ruediger Pluem]

Modified: httpd/httpd/trunk/modules/filters/mod_buffer.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/filters/mod_buffer.c?rev=718132&r1=718131&r2=718132&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/filters/mod_buffer.c (original)
+++ httpd/httpd/trunk/modules/filters/mod_buffer.c Sun Nov 16 14:41:53 2008
@@ -239,10 +239,17 @@
                     break;
                 }
 
-                /* pass flush and metadata buckets through */
-                if (APR_BUCKET_IS_FLUSH(e) || APR_BUCKET_IS_METADATA(e)) {
+                /* flush buckets clear the buffer */
+                if (APR_BUCKET_IS_FLUSH(e)) {
                     APR_BUCKET_REMOVE(e);
-                    APR_BRIGADE_INSERT_TAIL(bb, e);
+                    APR_BRIGADE_INSERT_TAIL(ctx->bb, e);
+                    break;
+                }
+
+                /* pass metadata buckets through */
+                if (APR_BUCKET_IS_METADATA(e)) {
+                    APR_BUCKET_REMOVE(e);
+                    APR_BRIGADE_INSERT_TAIL(ctx->bb, e);
                     continue;
                 }
 



Mime
View raw message