Author: fanningpj
Date: Sun Jun 21 12:13:21 2026
New Revision: 1935539
Log:
reject trailing dot with empty fraction in GDate time parse. Thanks to aizu-m.
This closes #65
Modified:
xmlbeans/trunk/src/main/java/org/apache/xmlbeans/GDate.java
xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/GDateTests.java
Modified: xmlbeans/trunk/src/main/java/org/apache/xmlbeans/GDate.java
==============================================================================
--- xmlbeans/trunk/src/main/java/org/apache/xmlbeans/GDate.java Sun Jun 21
12:12:13 2026 (r1935538)
+++ xmlbeans/trunk/src/main/java/org/apache/xmlbeans/GDate.java Sun Jun 21
12:13:21 2026 (r1935539)
@@ -281,6 +281,9 @@ public final class GDate implements GDat
}
throw new IllegalArgumentException();
}
+ } else {
+ // a '.' must be followed by at least one fractional digit
+ throw new IllegalArgumentException("fractional seconds
must contain at least one digit");
}
}
Modified:
xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/GDateTests.java
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/GDateTests.java
Sun Jun 21 12:12:13 2026 (r1935538)
+++ xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/GDateTests.java
Sun Jun 21 12:13:21 2026 (r1935539)
@@ -184,6 +184,9 @@ public class GDateTests {
"00:00:00-14:01", // tz
"00:00:00+15:00", // tz
"00:00:00-15:00", // tz
+ "1996-02-29T00:00:00.", // trailing '.' with no fractional digits
+ "00:00:00.", // trailing '.' with no fractional digits
+ "2001-12-31T07:00:59.Z", // '.' followed by timezone, no fractional
digits
};
private static final String[] validDates = {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]