I'm checking this in. This fixes PR 28658. I've already checked in the mauve test case. Anthony tells me that this bug was revealed by the jetty test suite.
I took a fairly conservative interpretation here. Tom 2006-08-09 Tom Tromey <[EMAIL PROTECTED]> PR classpath/28658: * java/text/SimpleDateFormat.java (parse): Let an unquoted space in the pattern match any number of spaces in the text. Index: java/text/SimpleDateFormat.java =================================================================== RCS file: /cvsroot/classpath/classpath/java/text/SimpleDateFormat.java,v retrieving revision 1.53 diff -u -r1.53 SimpleDateFormat.java --- java/text/SimpleDateFormat.java 8 May 2006 13:19:22 -0000 1.53 +++ java/text/SimpleDateFormat.java 9 Aug 2006 19:34:42 -0000 @@ -917,7 +917,25 @@ || ((ch < 'a' || ch > 'z') && (ch < 'A' || ch > 'Z'))) { - if (! expect (dateStr, pos, ch)) + if (quote_start == -1 && ch == ' ') + { + // A single unquoted space in the pattern may match + // any number of spaces in the input. + int index = pos.getIndex(); + int save = index; + while (index < dateStr.length() + && Character.isWhitespace(dateStr.charAt(index))) + ++index; + if (index > save) + pos.setIndex(index); + else + { + // Didn't see any whitespace. + pos.setErrorIndex(index); + return null; + } + } + else if (! expect (dateStr, pos, ch)) return null; continue; }