From 925dcf456d40f624c325b16b3e51a39210a0173b Mon Sep 17 00:00:00 2001 From: Mladen Turk Date: Mon, 13 Sep 2004 11:30:22 +0000 Subject: [PATCH] No need to allocate hostname on each request for persistent connections. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105109 13f79535-47bb-0310-9956-ffa450edef68 --- modules/proxy/proxy_util.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/modules/proxy/proxy_util.c b/modules/proxy/proxy_util.c index 397d9225c7..eddc08384c 100644 --- a/modules/proxy/proxy_util.c +++ b/modules/proxy/proxy_util.c @@ -1569,17 +1569,20 @@ ap_proxy_determine_connection(apr_pool_t *p, request_rec *r, */ /* are we connecting directly, or via a proxy? */ if (proxyname) { - conn->hostname = apr_pstrdup(conn->pool, proxyname); - conn->port = proxyport; - } else { - conn->hostname = apr_pstrdup(conn->pool, uri->hostname); - conn->port = uri->port; *url = apr_pstrcat(p, uri->path, uri->query ? "?" : "", uri->query ? uri->query : "", uri->fragment ? "#" : "", uri->fragment ? uri->fragment : "", NULL); } - + if (!conn->hostname) { + if (proxyname) { + conn->hostname = apr_pstrdup(conn->pool, proxyname); + conn->port = proxyport; + } else { + conn->hostname = apr_pstrdup(conn->pool, uri->hostname); + conn->port = uri->port; + } + } /* TODO: add address cache for forward proxies */ conn->addr = worker->cp->addr; if (r->proxyreq == PROXYREQ_PROXY) { -- 2.40.0