]> granicus.if.org Git - apache/commitdiff
Well this always sucks, to build a good example and discover the simple
authorWilliam A. Rowe Jr <wrowe@apache.org>
Fri, 28 Sep 2007 03:22:42 +0000 (03:22 +0000)
committerWilliam A. Rowe Jr <wrowe@apache.org>
Fri, 28 Sep 2007 03:22:42 +0000 (03:22 +0000)
example case doesn't actually work :)

Stop returning their buckets to the caller, only to have the caller send
us the same buckets on subsequent calls to our case_filter.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@580206 13f79535-47bb-0310-9956-ffa450edef68

modules/experimental/mod_case_filter.c

index 04aeb7034898423e19bb222118a7eb373eab625c..be64f2fb0c22e0758764114eba770ca27df6ba1f 100644 (file)
@@ -91,7 +91,16 @@ static apr_status_t CaseFilterOutFilter(ap_filter_t *f,
         APR_BRIGADE_INSERT_TAIL(pbbOut,pbktOut);
         }
 
-    /* XXX: is there any advantage to passing a brigade for each bucket? */
+    /* Q: is there any advantage to passing a brigade for each bucket? 
+     * A: obviously, it can cut down server resource consumption, if this
+     * experimental module was fed a file of 4MB, it would be using 8MB for
+     * the 'read' buckets and the 'write' buckets.
+     *
+     * Note it is more efficient to consume (destroy) each bucket as it's
+     * processed above than to do a single cleanup down here.  In any case,
+     * don't let our caller pass the same buckets to us, twice;
+     */
+    ap_briade_cleanup(pbbIn);
     return ap_pass_brigade(f->next,pbbOut);
     }