diff options
Diffstat (limited to 'server/core.c')
-rw-r--r-- | server/core.c | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/server/core.c b/server/core.c index bf3eee7995..3a9378f81b 100644 --- a/server/core.c +++ b/server/core.c @@ -3095,10 +3095,6 @@ static apr_status_t core_output_filter(ap_filter_t *f, apr_bucket_brigade *b) (nbytes + flen < AP_MIN_BYTES_TO_WRITE) && !APR_BUCKET_IS_FLUSH(last_e)) || (nbytes + flen < AP_MIN_BYTES_TO_WRITE && APR_BUCKET_IS_EOS(last_e) && c->keepalive)) { - if (ctx->subpool == NULL) { - apr_pool_create(&ctx->subpool, f->c->pool); - } - /* NEVER save an EOS in here. If we are saving a brigade with * an EOS bucket, then we are doing keepalive connections, and * we want to process to second request fully. @@ -3110,7 +3106,7 @@ static apr_status_t core_output_filter(ap_filter_t *f, apr_bucket_brigade *b) * after the request_pool is cleared. */ if (ctx->b == NULL) { - ctx->b = apr_brigade_create(ctx->subpool); + ctx->b = apr_brigade_create(c->pool); } APR_BRIGADE_FOREACH(bucket, b) { @@ -3135,13 +3131,11 @@ static apr_status_t core_output_filter(ap_filter_t *f, apr_bucket_brigade *b) return rv; } apr_brigade_write(ctx->b, NULL, NULL, str, n); - ctx->subpool_has_stuff = 1; } apr_brigade_destroy(b); } else { - ap_save_brigade(f, &ctx->b, &b, ctx->subpool); - ctx->subpool_has_stuff = 1; + ap_save_brigade(f, &ctx->b, &b, c->pool); } return APR_SUCCESS; } @@ -3216,11 +3210,6 @@ static apr_status_t core_output_filter(ap_filter_t *f, apr_bucket_brigade *b) more = NULL; } /* end while () */ - if (ctx->subpool && ctx->subpool_has_stuff) { - apr_pool_clear(ctx->subpool); - ctx->subpool_has_stuff = 0; - } - return APR_SUCCESS; } @@ -3322,8 +3311,6 @@ static conn_rec *core_create_conn(apr_pool_t *ptrans, server_rec *server, net->c->id = conn_id; - apr_pool_cleanup_register(ptrans, net, ap_lingering_close, apr_pool_cleanup_null); - ap_set_module_config(net->c->conn_config, &core_module, csd); ap_add_input_filter("CORE_IN", net, NULL, net->c); ap_add_output_filter("CORE", net, NULL, net->c); |