httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From c...@apache.org
Subject svn commit: r327898 - /httpd/httpd/branches/2.2.x/server/util.c
Date Mon, 24 Oct 2005 01:08:28 GMT
Author: colm
Date: Sun Oct 23 18:08:25 2005
New Revision: 327898

URL: http://svn.apache.org/viewcvs?rev=327898&view=rev
Log:
Merge r292111 from trunk:

Clean up c2x code-path by not double-setting the prefix variable.

* server/util.c
  (c2x): Take a new prefix parameter instead of hard-coding '%' and then
  conditionally setting 'x' for half of the cases.

Submitted by: jerenkrantz
Reviewed by: nd, colm   

Modified:
    httpd/httpd/branches/2.2.x/server/util.c

Modified: httpd/httpd/branches/2.2.x/server/util.c
URL: http://svn.apache.org/viewcvs/httpd/httpd/branches/2.2.x/server/util.c?rev=327898&r1=327897&r2=327898&view=diff
==============================================================================
--- httpd/httpd/branches/2.2.x/server/util.c (original)
+++ httpd/httpd/branches/2.2.x/server/util.c Sun Oct 23 18:08:25 2005
@@ -1659,12 +1659,13 @@
  */
 static const char c2x_table[] = "0123456789abcdef";
 
-static APR_INLINE unsigned char *c2x(unsigned what, unsigned char *where)
+static APR_INLINE unsigned char *c2x(unsigned what, unsigned char prefix,
+                                     unsigned char *where)
 {
 #if APR_CHARSET_EBCDIC
     what = apr_xlate_conv_byte(ap_hdrs_to_ascii, (unsigned char)what);
 #endif /*APR_CHARSET_EBCDIC*/
-    *where++ = '%';
+    *where++ = prefix;
     *where++ = c2x_table[what >> 4];
     *where++ = c2x_table[what & 0xf];
     return where;
@@ -1694,7 +1695,7 @@
 
     while ((c = *s)) {
         if (TEST_CHAR(c, T_ESCAPE_PATH_SEGMENT)) {
-            d = c2x(c, d);
+            d = c2x(c, '%', d);
         }
         else {
             *d++ = c;
@@ -1723,7 +1724,7 @@
     }
     while ((c = *s)) {
         if (TEST_CHAR(c, T_OS_ESCAPE_PATH)) {
-            d = c2x(c, d);
+            d = c2x(c, '%', d);
         }
         else {
             *d++ = c;
@@ -1810,8 +1811,7 @@
                 *d++ = *s;
                 break;
             default:
-                c2x(*s, d);
-                *d = 'x';
+                c2x(*s, 'x', d);
                 d += 3;
             }
         }
@@ -1874,8 +1874,7 @@
                     ep = --d; /* break the for loop as well */
                     break;
                 }
-                c2x(*s, d);
-                *d = 'x';
+                c2x(*s, 'x', d);
                 d += 3;
             }
         }



Mime
View raw message