From: Brian Pane Date: Fri, 23 Nov 2001 10:56:31 +0000 (+0000) Subject: restructured the conditional logic in ap_merge_per_dir_configs() for faster execution X-Git-Tag: 2.0.29~36 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1dffdc2350fefbe184e5b4d4d6568c2759f90e7d;p=apache restructured the conditional logic in ap_merge_per_dir_configs() for faster execution git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92141 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/server/config.c b/server/config.c index 291d129ee0..b44957f802 100644 --- a/server/config.c +++ b/server/config.c @@ -255,13 +255,19 @@ AP_CORE_DECLARE(ap_conf_vector_t*) ap_merge_per_dir_configs(apr_pool_t *p, module *modp; for (modp = ap_top_module; modp; modp = modp->next) { - merger_func df = modp->merge_dir_config; int i = modp->module_index; - if (df && new_vector[i] && base_vector[i]) - conf_vector[i] = (*df) (p, base_vector[i], new_vector[i]); - else - conf_vector[i] = new_vector[i] ? new_vector[i] : base_vector[i]; + if (!new_vector[i]) { + conf_vector[i] = base_vector[i]; + } + else { + merger_func df = modp->merge_dir_config; + if (df && base_vector[i]) { + conf_vector[i] = (*df) (p, base_vector[i], new_vector[i]); + } + else + conf_vector[i] = new_vector[i]; + } } return (ap_conf_vector_t *) conf_vector;