Author: markt
Date: Wed May 21 17:03:54 2014
New Revision: 1596623

URL: http://svn.apache.org/r1596623
Log:
Apply patch 06 from jboynes to improve cookie handling.
Remove duplicate code.
The patch should be safe since the logic is unchanged.

Modified:
    tomcat/trunk/java/org/apache/tomcat/util/http/SetCookieSupport.java

Modified: tomcat/trunk/java/org/apache/tomcat/util/http/SetCookieSupport.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/http/SetCookieSupport.java?rev=1596623&r1=1596622&r2=1596623&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/http/SetCookieSupport.java 
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/http/SetCookieSupport.java Wed May 
21 17:03:54 2014
@@ -209,37 +209,6 @@ public class SetCookieSupport {
     }
 
     private static boolean needsQuotes(String value) {
-        if (CookieSupport.ALLOW_HTTP_SEPARATORS_IN_V0) {
-            return isNotV0Token(value);
-        } else {
-            return isNotHttpToken(value);
-        }
-    }
-
-    private static boolean isNotV0Token(String value) {
-        if (value==null) {
-            return false;
-        }
-
-        int i = 0;
-        int len = value.length();
-
-        if (alreadyQuoted(value)) {
-            i++;
-            len--;
-        }
-
-        for (; i < len; i++) {
-            char c = value.charAt(i);
-
-            if (CookieSupport.isV0Separator(c)) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    private static boolean isNotHttpToken(String value) {
         if (value == null) {
             return false;
         }
@@ -255,13 +224,20 @@ public class SetCookieSupport {
         for (; i < len; i++) {
             char c = value.charAt(i);
 
-            if (CookieSupport.isHttpSeparator(c)) {
-                return true;
+            if (CookieSupport.ALLOW_HTTP_SEPARATORS_IN_V0) {
+                if (CookieSupport.isV0Separator(c)) {
+                    return true;
+                }
+            } else {
+                if (CookieSupport.isHttpSeparator(c)) {
+                    return true;
+                }
             }
         }
         return false;
     }
 
+
     private static boolean alreadyQuoted (String value) {
         return value.length() >= 2 &&
                 value.charAt(0) == '\"' &&



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to