From 0147cfc14f5d0551c3bcf2c6f7a85f6c05d249bc Mon Sep 17 00:00:00 2001 From: Jeff Trawick Date: Wed, 20 Sep 2000 21:50:50 +0000 Subject: [PATCH] Fix the prior fix to the usage of ap_brigade_split()... The caller of send_parsed_content() needs to see the new brigade representing the rest of the content. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86270 13f79535-47bb-0310-9956-ffa450edef68 --- modules/filters/mod_include.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/modules/filters/mod_include.c b/modules/filters/mod_include.c index 6d2f88792b..8299bed66d 100644 --- a/modules/filters/mod_include.c +++ b/modules/filters/mod_include.c @@ -2255,7 +2255,7 @@ static int handle_printenv(ap_bucket *in, request_rec *r, const char *error) /* This is a stub which parses a file descriptor. */ -static void send_parsed_content(ap_bucket_brigade *bb, request_rec *r, +static void send_parsed_content(ap_bucket_brigade **bb, request_rec *r, ap_filter_t *f) { char directive[MAX_STRING_LEN], error[MAX_STRING_LEN]; @@ -2265,7 +2265,7 @@ static void send_parsed_content(ap_bucket_brigade *bb, request_rec *r, int if_nesting; int printing; int conditional_status; - ap_bucket *dptr = AP_BRIGADE_FIRST(bb); + ap_bucket *dptr = AP_BRIGADE_FIRST(*bb); ap_bucket *tagbuck, *dptr2; ap_bucket *endsec; ap_bucket_brigade *tag_and_after; @@ -2289,12 +2289,12 @@ static void send_parsed_content(ap_bucket_brigade *bb, request_rec *r, ap_escape_shell_cmd(r->pool, arg_copy)); } - AP_BRIGADE_FOREACH(dptr, bb) { - if ((tagbuck = find_string(dptr, STARTING_SEQUENCE, AP_BRIGADE_LAST(bb))) != NULL) { + AP_BRIGADE_FOREACH(dptr, *bb) { + if ((tagbuck = find_string(dptr, STARTING_SEQUENCE, AP_BRIGADE_LAST(*bb))) != NULL) { dptr2 = tagbuck; dptr = tagbuck; - while (dptr2 != AP_BRIGADE_SENTINEL(bb) && - (endsec = find_string(dptr2, ENDING_SEQUENCE, AP_BRIGADE_LAST(bb))) == NULL) { + while (dptr2 != AP_BRIGADE_SENTINEL(*bb) && + (endsec = find_string(dptr2, ENDING_SEQUENCE, AP_BRIGADE_LAST(*bb))) == NULL) { dptr2 = AP_BUCKET_NEXT(dptr2); } if (endsec == NULL) { @@ -2316,9 +2316,9 @@ static void send_parsed_content(ap_bucket_brigade *bb, request_rec *r, ap_rputs(error, r); return; } - tag_and_after = ap_brigade_split(bb, dptr); - ap_pass_brigade(f->next, bb); /* process what came before the tag */ - bb = tag_and_after; + tag_and_after = ap_brigade_split(*bb, dptr); + ap_pass_brigade(f->next, *bb); /* process what came before the tag */ + *bb = tag_and_after; if (!strcmp(directive, "if")) { if (!printing) { if_nesting++; @@ -2513,7 +2513,7 @@ static int includes_filter(ap_filter_t *f, ap_bucket_brigade *b) ap_bsetopt(r->connection->client, BO_WXLATE, &ap_hdrs_to_ascii); #endif - send_parsed_content(b, r, f); + send_parsed_content(&b, r, f); ap_pass_brigade(f->next, b); if (parent) { -- 2.40.0