mirror of
https://github.com/apache/httpd.git
synced 2025-08-08 15:02:10 +03:00
* Fix another memory leak related to PR 44026. Now that we keep the connection
data structure alive in the reslist, the live time of c->pool is too long. r->pool has the correct live time since rp dies before r. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@603502 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
@@ -332,16 +332,16 @@ PROXY_DECLARE(const char *)
|
||||
|
||||
PROXY_DECLARE(request_rec *)ap_proxy_make_fake_req(conn_rec *c, request_rec *r)
|
||||
{
|
||||
request_rec *rp = apr_pcalloc(c->pool, sizeof(*r));
|
||||
request_rec *rp = apr_pcalloc(r->pool, sizeof(*r));
|
||||
|
||||
rp->pool = c->pool;
|
||||
rp->pool = r->pool;
|
||||
rp->status = HTTP_OK;
|
||||
|
||||
rp->headers_in = apr_table_make(c->pool, 50);
|
||||
rp->subprocess_env = apr_table_make(c->pool, 50);
|
||||
rp->headers_out = apr_table_make(c->pool, 12);
|
||||
rp->err_headers_out = apr_table_make(c->pool, 5);
|
||||
rp->notes = apr_table_make(c->pool, 5);
|
||||
rp->headers_in = apr_table_make(r->pool, 50);
|
||||
rp->subprocess_env = apr_table_make(r->pool, 50);
|
||||
rp->headers_out = apr_table_make(r->pool, 12);
|
||||
rp->err_headers_out = apr_table_make(r->pool, 5);
|
||||
rp->notes = apr_table_make(r->pool, 5);
|
||||
|
||||
rp->server = r->server;
|
||||
rp->proxyreq = r->proxyreq;
|
||||
@@ -352,7 +352,7 @@ PROXY_DECLARE(request_rec *)ap_proxy_make_fake_req(conn_rec *c, request_rec *r)
|
||||
rp->proto_output_filters = c->output_filters;
|
||||
rp->proto_input_filters = c->input_filters;
|
||||
|
||||
rp->request_config = ap_create_request_config(c->pool);
|
||||
rp->request_config = ap_create_request_config(r->pool);
|
||||
proxy_run_create_req(r, rp);
|
||||
|
||||
return rp;
|
||||
|
Reference in New Issue
Block a user