]> granicus.if.org Git - apache/commitdiff
support unsetting vars
authorEric Covener <covener@apache.org>
Fri, 10 Feb 2017 15:25:25 +0000 (15:25 +0000)
committerEric Covener <covener@apache.org>
Fri, 10 Feb 2017 15:25:25 +0000 (15:25 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1782482 13f79535-47bb-0310-9956-ffa450edef68

modules/proxy/mod_proxy_fcgi.c

index bddb03e6a77cbafa5198c35e6825ec5f4277fd45..fa57e2ad8a4f87952428e50ed65d7bbc2bc421a8 100644 (file)
@@ -189,7 +189,12 @@ static void fix_cgivars(request_rec *r, fcgi_dirconf_t *dconf)
                               entry->envname, oldval, val);
 
             }
-            apr_table_setn(r->subprocess_env, entry->envname, val);
+            if (entry->envname[0] == '!') { 
+                apr_table_unset(r->subprocess_env, entry->envname+1);
+            }
+            else { 
+                apr_table_setn(r->subprocess_env, entry->envname, val);
+            }
         }
         else {
             ap_log_rerror(APLOG_MARK, APLOG_TRACE8, 0, r, "fix_cgivars: Condition returned %d", rc);