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;
         }


Reply via email to