From 1e62099704bcef8121e569f864f9d7cd69c69592 Mon Sep 17 00:00:00 2001 From: Brian Pane Date: Thu, 20 Jun 2002 03:45:21 +0000 Subject: Remove the old EOS logic that I neglected to delete on the last commit, and add a check for ap_pass_brigade() failure git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95818 13f79535-47bb-0310-9956-ffa450edef68 --- modules/filters/mod_include.c | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) (limited to 'modules') diff --git a/modules/filters/mod_include.c b/modules/filters/mod_include.c index 662c86c1be..4e96695831 100644 --- a/modules/filters/mod_include.c +++ b/modules/filters/mod_include.c @@ -3240,6 +3240,10 @@ static apr_status_t send_parsed_content(apr_bucket_brigade **bb, /* Set aside tag, pass pre-tag... */ tag_and_after = apr_brigade_split(*bb, ctx->head_start_bucket); rv = ap_pass_brigade(f->next, *bb); + if (rv != APR_SUCCESS) { + return rv; + } + /* Set aside the partial tag * Exception: if there's an EOS at the end of this brigade, * the tag will never be completed, so send an error and EOS @@ -3257,27 +3261,12 @@ static apr_status_t send_parsed_content(apr_bucket_brigade **bb, apr_bucket_destroy(b); } CREATE_ERROR_BUCKET(ctx, err_bucket, b, err_bucket); - ap_pass_brigade(f->next, tag_and_after); + rv = ap_pass_brigade(f->next, tag_and_after); } else { ap_save_brigade(f, &ctx->ssi_tag_brigade, &tag_and_after, r->pool); } - if (APR_BUCKET_IS_EOS(APR_BRIGADE_LAST(ctx->ssi_tag_brigade))) { - apr_bucket *new_eos; - /* Make sure there's no EOS at the end of the set-aside - * brigade, because we may later prepend it to some - * other brigade - */ - APR_BUCKET_REMOVE(APR_BRIGADE_LAST(ctx->ssi_tag_brigade)); - - /* And put an EOS on the brigade that we're about to pass - * to the next filter. - */ - new_eos = apr_bucket_eos_create((*bb)->bucket_alloc); - APR_BRIGADE_INSERT_TAIL(*bb, new_eos); - } - if (rv != APR_SUCCESS) { return rv; } -- cgit v1.2.3