Author: sebb
Date: Tue Sep 25 01:07:01 2012
New Revision: 1389673
URL: http://svn.apache.org/viewvc?rev=1389673&view=rev
Log:
LANG-826 FastDateParser does not handle non-ASCII digits correctly
Modified:
commons/proper/lang/trunk/src/changes/changes.xml
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/time/FastDateParser.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=1389673&r1=1389672&r2=1389673&view=diff
==============================================================================
--- commons/proper/lang/trunk/src/changes/changes.xml (original)
+++ commons/proper/lang/trunk/src/changes/changes.xml Tue Sep 25 01:07:01 2012
@@ -22,6 +22,7 @@
<body>
<release version="3.2" date="TBA" description="Next release">
+ <action issue="LANG-826" type="fix">FastDateParser does not handle
non-ASCII digits correctly</action>
<action issue="LANG-825" type="add">Create StrBuilder APIs similar to
String.format(String, Object...)</action>
<action issue="LANG-817" type="fix">Add
org.apache.commons.lang3.SystemUtils.IS_OS_WINDOWS_8</action>
<action issue="LANG-813" type="fix">StringUtils.equalsIgnoreCase doesn't
check string reference equality</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=1389673&r1=1389672&r2=1389673&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
Tue Sep 25 01:07:01 2012
@@ -684,10 +684,10 @@ public class FastDateParser implements D
@Override
public boolean addRegex(FastDateParser parser, StringBuilder regex) {
if(parser.isNextNumber()) {
-
regex.append("(\\d{").append(parser.getFieldWidth()).append("}+)");
+
regex.append("(\\p{IsNd}{").append(parser.getFieldWidth()).append("}+)");
}
else {
- regex.append("(\\d++)");
+ regex.append("(\\p{IsNd}++)");
}
return true;
}