craigmcc 01/04/30 21:19:28 Modified: tester/src/tester/org/apache/tester GetHeaders01.java Log: According to the HTTP/1.1 specification (Section 4.2), it is legal for a proxy server (and, thus, Apache's mod_proxy module) to combine header values for two occurrences of the same header like this: Accept-Language: en-us Accept:Language: en-gb into a single header: Accept-Language: en-us,en-gb Make this test succeed correctly even if this event occurs. Revision Changes Path 1.2 +10 -3 jakarta-tomcat-4.0/tester/src/tester/org/apache/tester/GetHeaders01.java Index: GetHeaders01.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/tester/src/tester/org/apache/tester/GetHeaders01.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- GetHeaders01.java 2000/12/26 18:57:44 1.1 +++ GetHeaders01.java 2001/05/01 04:19:26 1.2 @@ -69,7 +69,7 @@ * "Accept-Language" headers. * * @author Craig R. McClanahan - * @version $Revision: 1.1 $ $Date: 2000/12/26 18:57:44 $ + * @version $Revision: 1.2 $ $Date: 2001/05/01 04:19:26 $ */ public class GetHeaders01 extends HttpServlet { @@ -82,8 +82,15 @@ ArrayList values = new ArrayList(); Enumeration headers = request.getHeaders("Accept-Language"); while (headers.hasMoreElements()) { - String header = (String) headers.nextElement(); - values.add(header); + String header = (String) headers.nextElement() + ","; + while (true) { + int comma = header.indexOf(","); + if (comma < 0) + break; + String value = header.substring(0, comma).trim(); + values.add(value); + header = header.substring(comma + 1).trim(); + } } if (values.size() != 2) writer.println("GetHeaders01 FAILED - Returned " + values.size()