You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by ga...@apache.org on 2008/12/24 06:08:46 UTC

svn commit: r729233 - in /geronimo/specs/trunk/geronimo-javamail_1.4_spec/src: main/java/javax/mail/internet/HeaderTokenizer.java test/java/javax/mail/internet/ContentTypeTest.java

Author: gawor
Date: Tue Dec 23 21:08:45 2008
New Revision: 729233

URL: http://svn.apache.org/viewvc?rev=729233&view=rev
Log:
Parse content types with parameters containing escaped characters. Patch from Andreas Veithen (GERONIMO-4421)

Modified:
    geronimo/specs/trunk/geronimo-javamail_1.4_spec/src/main/java/javax/mail/internet/HeaderTokenizer.java
    geronimo/specs/trunk/geronimo-javamail_1.4_spec/src/test/java/javax/mail/internet/ContentTypeTest.java

Modified: geronimo/specs/trunk/geronimo-javamail_1.4_spec/src/main/java/javax/mail/internet/HeaderTokenizer.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-javamail_1.4_spec/src/main/java/javax/mail/internet/HeaderTokenizer.java?rev=729233&r1=729232&r2=729233&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-javamail_1.4_spec/src/main/java/javax/mail/internet/HeaderTokenizer.java (original)
+++ geronimo/specs/trunk/geronimo-javamail_1.4_spec/src/main/java/javax/mail/internet/HeaderTokenizer.java Tue Dec 23 21:08:45 2008
@@ -252,7 +252,7 @@
             if (ch == '"') {
                 String value;
                 if (requiresEscaping) {
-                    value = getEscapedValue(start, pos);
+                    value = getEscapedValue(start, pos++);
                 }
                 else {
                     value = _header.substring(start, pos++);

Modified: geronimo/specs/trunk/geronimo-javamail_1.4_spec/src/test/java/javax/mail/internet/ContentTypeTest.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-javamail_1.4_spec/src/test/java/javax/mail/internet/ContentTypeTest.java?rev=729233&r1=729232&r2=729233&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-javamail_1.4_spec/src/test/java/javax/mail/internet/ContentTypeTest.java (original)
+++ geronimo/specs/trunk/geronimo-javamail_1.4_spec/src/test/java/javax/mail/internet/ContentTypeTest.java Tue Dec 23 21:08:45 2008
@@ -145,4 +145,14 @@
         assertFalse(type.match(""));
         assertFalse(type.match("text/plain/yada"));
     }
+    
+    public void testSOAP12ContentType() throws ParseException {
+        ContentType type = new ContentType("multipart/related; type=\"application/xop+xml\"; start=\"<ro...@soapui.org>\"; start-info=\"application/soap+xml; action=\\\"urn:upload\\\"\"; boundary=\"----=_Part_10_5804917.1223557742343\"");
+        assertEquals("multipart/related", type.getBaseType());
+        assertEquals("application/xop+xml", type.getParameter("type"));
+        assertEquals("<ro...@soapui.org>", type.getParameter("start"));
+        assertEquals("application/soap+xml; action=\"urn:upload\"", type.getParameter("start-info"));
+        assertEquals("----=_Part_10_5804917.1223557742343", type.getParameter("boundary"));
+    }
+
 }