On Jul 10, 2006, at 6:21 AM, Jean-frederic Clere wrote:
Easy. See enclosed patch.
-1.
This breaks current behavior. +1 for the warning, but
-1 for the breakage.
Index: modules/proxy/mod_proxy.c
===================================================================
--- modules/proxy/mod_proxy.c (revision 419906)
+++ modules/proxy/mod_proxy.c (working copy)
@@ -1069,8 +1069,11 @@
const char *err = ap_proxy_add_worker(&worker, cmd-
>pool, conf, r);
if (err)
return apr_pstrcat(cmd->temp_pool, "ProxyPass ",
err, NULL);
+ PROXY_COPY_CONF_PARAMS(worker, conf);
+ } else {
+ ap_log_error(APLOG_MARK, APLOG_WARNING, 0, cmd->server,
+ "worker %s already used by another worker
(old conf kept)", worker->name);
}
- PROXY_COPY_CONF_PARAMS(worker, conf);
for (i = 0; i < arr->nelts; i++) {
const char *err = set_worker_param(cmd->pool, worker,
elts[i].key,
@@ -1462,8 +1465,11 @@
const char *err;
if ((err = ap_proxy_add_worker(&worker, cmd->pool, conf,
name)) != NULL)
return apr_pstrcat(cmd->temp_pool, "BalancerMember ",
err, NULL);
+ PROXY_COPY_CONF_PARAMS(worker, conf);
+ } else {
+ ap_log_error(APLOG_MARK, APLOG_WARNING, 0, cmd->server,
+ "worker %s already used by another worker
(old conf kept)", worker->name);
}
- PROXY_COPY_CONF_PARAMS(worker, conf);
arr = apr_table_elts(params);
elts = (const apr_table_entry_t *)arr->elts;