Author: jfrederic.clere(a)jboss.com
Date: 2008-11-23 13:13:03 -0500 (Sun, 23 Nov 2008)
New Revision: 2066
Modified:
trunk/mod_cluster/native/mod_proxy_cluster/mod_proxy_cluster.c
Log:
Arrange reslist logic.
Modified: trunk/mod_cluster/native/mod_proxy_cluster/mod_proxy_cluster.c
===================================================================
--- trunk/mod_cluster/native/mod_proxy_cluster/mod_proxy_cluster.c 2008-11-23 10:47:56 UTC
(rev 2065)
+++ trunk/mod_cluster/native/mod_proxy_cluster/mod_proxy_cluster.c 2008-11-23 18:13:03 UTC
(rev 2066)
@@ -26,6 +26,7 @@
*/
#include "apr_strings.h"
+#include "apr_version.h"
#include "httpd.h"
#include "http_config.h"
@@ -68,7 +69,6 @@
#define TIMEINTERVAL apr_time_from_sec(1) /* recalcul the lbstatus based on number of
request in the time interval */
-
/* reslist constructor */
/* XXX: Should use the proxy_util one. */
static apr_status_t connection_constructor(void **resource, void *params,
@@ -162,10 +162,14 @@
#endif
{
apr_pool_t *p = conn->pool;
- apr_pool_clear(conn->pool);
- memset(conn, 0, sizeof(proxy_conn_rec));
+ apr_pool_clear(p);
+ conn = apr_pcalloc(p, sizeof(proxy_conn_rec));
conn->pool = p;
conn->worker = worker;
+#if AP_MODULE_MAGIC_AT_LEAST(20051115,13)
+ apr_pool_create(&(conn->scpool), p);
+ apr_pool_tag(conn->scpool, "proxy_conn_scpool");
+#endif
}
#if APR_HAS_THREADS
if (worker->hmax && worker->cp->res) {
@@ -1096,9 +1100,9 @@
rv = APR_SUCCESS;
if (!worker->cp->conn) {
/* XXX: What appends is worker->cp->pool is NULL */
- if (worker->cp->pool)
+ if (worker->cp->pool) {
connection_constructor((void **)&conn, worker,
worker->cp->pool);
- else
+ } else
rv = APR_ENOPOOL;
}
else {
Show replies by date