]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Fix the "merge" behaviour of the ProxyErrorOverride directive.
authorGraham Leggett <minfrin@apache.org>
Fri, 28 Sep 2001 10:33:39 +0000 (10:33 +0000)
committerGraham Leggett <minfrin@apache.org>
Fri, 28 Sep 2001 10:33:39 +0000 (10:33 +0000)
PR:
Obtained from:
Submitted by:
Reviewed by:

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91172 13f79535-47bb-0310-9956-ffa450edef68

modules/proxy/mod_proxy.c
modules/proxy/mod_proxy.h

index 6f177fe3d0304bd3097fb940816f96a462455681..464b140e01ca2e6fe3c6e575cb1e397121b928c9 100644 (file)
@@ -483,6 +483,7 @@ static void * create_proxy_config(apr_pool_t *p, server_rec *s)
     ps->maxfwd = DEFAULT_MAX_FORWARDS;
     ps->maxfwd_set = 0;
     ps->error_override = 0; 
+    ps->error_override_set = 0; 
     return ps;
 }
 
@@ -505,6 +506,7 @@ static void * merge_proxy_config(apr_pool_t *p, void *basev, void *overridesv)
     ps->req = (overrides->req_set == 0) ? base->req : overrides->req;
     ps->recv_buffer_size = (overrides->recv_buffer_size_set == 0) ? base->recv_buffer_size : overrides->recv_buffer_size;
     ps->maxfwd = (overrides->maxfwd_set == 0) ? base->maxfwd : overrides->maxfwd;
+    ps->error_override = (overrides->error_override_set == 0) ? base->error_override : overrides->error_override;
 
     return ps;
 }
@@ -767,6 +769,7 @@ static const char *
     ap_get_module_config(parms->server->module_config, &proxy_module);
 
     psf->error_override = flag;
+    psf->error_override_set = 1;
     return NULL;
 }
 
index 55c98c85e3752023e74ca720988f3dc9ffb76d4a..91e661dbe7a26e7d002bef6069a1c332c957b6de 100644 (file)
@@ -186,6 +186,7 @@ typedef struct {
      * returned from the rest of the system 
      */
     int error_override;
+    int error_override_set;
 
 } proxy_server_conf;