You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by se...@apache.org on 2012/09/27 02:55:31 UTC
svn commit: r1390795 - in /commons/proper/lang/trunk/src: changes/changes.xml
main/java/org/apache/commons/lang3/time/FastDateParser.java
test/java/org/apache/commons/lang3/time/FastDateParserTest.java
Author: sebb
Date: Thu Sep 27 00:55:31 2012
New Revision: 1390795
URL: http://svn.apache.org/viewvc?rev=1390795&view=rev
Log:
LANG-832 FastDateParser does not handle unterminated quotes correctly
Modified:
commons/proper/lang/trunk/src/changes/changes.xml
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/time/FastDateParser.java
commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/time/FastDateParserTest.java
Modified: commons/proper/lang/trunk/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/changes/changes.xml?rev=1390795&r1=1390794&r2=1390795&view=diff
==============================================================================
--- commons/proper/lang/trunk/src/changes/changes.xml (original)
+++ commons/proper/lang/trunk/src/changes/changes.xml Thu Sep 27 00:55:31 2012
@@ -22,6 +22,7 @@
<body>
<release version="3.2" date="TBA" description="Next release">
+ <action issue="LANG-832" type="fix">FastDateParser does not handle unterminated quotes correctly</action>
<action issue="LANG-831" type="fix">FastDateParser does not handle white-space properly</action>
<action issue="LANG-828" type="fix">FastDateParser does not handle non-Gregorian calendars properly</action>
<action issue="LANG-826" type="fix">FastDateParser does not handle non-ASCII digits correctly</action>
Modified: commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/time/FastDateParser.java
URL: http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/time/FastDateParser.java?rev=1390795&r1=1390794&r2=1390795&view=diff
==============================================================================
--- commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/time/FastDateParser.java (original)
+++ commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/time/FastDateParser.java Thu Sep 27 00:55:31 2012
@@ -141,6 +141,9 @@ public class FastDateParser implements D
currentFormatField= nextFormatField;
currentStrategy= nextStrategy;
}
+ if (patternMatcher.regionStart() != patternMatcher.regionEnd()) {
+ throw new IllegalArgumentException("Failed to parse \""+pattern+"\" ; gave up at index "+patternMatcher.regionStart());
+ }
if(currentStrategy.addRegex(this, regex)) {
collector.add(currentStrategy);
}
Modified: commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/time/FastDateParserTest.java
URL: http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/time/FastDateParserTest.java?rev=1390795&r1=1390794&r2=1390795&view=diff
==============================================================================
--- commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/time/FastDateParserTest.java (original)
+++ commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/time/FastDateParserTest.java Thu Sep 27 00:55:31 2012
@@ -333,6 +333,11 @@ public class FastDateParserTest {
assertEquals(cal.getTime(), fdf.parse("'20030210A'B153320989'"));
}
+ @Test
+ public void testLANG_832() throws Exception {
+ testSdfAndFdp("'d'd" ,"d3", false); // OK
+ testSdfAndFdp("'d'd'","d3", true); // should fail (unterminated quote)
+ }
@Test
public void testLANG_831() throws Exception {