You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by fu...@apache.org on 2011/07/15 02:28:39 UTC

svn commit: r1146932 - /httpd/httpd/trunk/modules/arch/win32/mod_win32.c

Author: fuankg
Date: Fri Jul 15 00:28:39 2011
New Revision: 1146932

URL: http://svn.apache.org/viewvc?rev=1146932&view=rev
Log:
Invert logic for env var utf-8 fixing.

Now we exclude a list of vars which we know for sure they
dont hold utf-8 chars; all other vars will be fixed. This
has the benefit that now also all vars from 3rd-party
modules will be fixed.

Modified:
    httpd/httpd/trunk/modules/arch/win32/mod_win32.c

Modified: httpd/httpd/trunk/modules/arch/win32/mod_win32.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/arch/win32/mod_win32.c?rev=1146932&r1=1146931&r2=1146932&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/arch/win32/mod_win32.c (original)
+++ httpd/httpd/trunk/modules/arch/win32/mod_win32.c Fri Jul 15 00:28:39 2011
@@ -524,14 +524,13 @@ static apr_status_t ap_cgi_build_command
      * application (following the OEM or Ansi code page in effect.)
      */
     for (i = 0; i < elts_arr->nelts; ++i) {
-        if (elts[i].key && *elts[i].key
-                && (strncmp(elts[i].key, "HTTP_", 5) == 0
-                 || strncmp(elts[i].key, "SERVER_", 7) == 0
-                 || strncmp(elts[i].key, "REQUEST_", 8) == 0
-                 || strncmp(elts[i].key, "PATH_", 5) == 0
-                 || strncmp(elts[i].key, "SSL_", 4) == 0
-                 || strncmp(elts[i].key, "GEOIP_", 6) == 0
-                 || strcmp(elts[i].key, "QUERY_STRING") == 0)) {
+        if (elts[i].key && *elts[i].key && *elts[i].val
+                && !(strncmp(elts[i].key, "REMOTE_", 7) == 0
+                || strcmp(elts[i].key, "GATEWAY_INTERFACE") == 0
+                || strcmp(elts[i].key, "REQUEST_METHOD") == 0
+                || strcmp(elts[i].key, "SERVER_ADDR") == 0
+                || strcmp(elts[i].key, "SERVER_PORT") == 0
+                || strcmp(elts[i].key, "SERVER_PROTOCOL") == 0)) {
             prep_string((const char**) &elts[i].val, r->pool);
         }
     }