dleslie 2002/06/17 13:06:00
Modified: java/src/org/apache/xalan/lib ExsltDatetime.java
Log:
Modified leap-year functions to use arithmetic logic rather than relying
on a Calendar method that doesn't exist in Java 1.1.8.
Revision Changes Path
1.2 +3 -6
xml-xalan/java/src/org/apache/xalan/lib/ExsltDatetime.java
Index: ExsltDatetime.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/lib/ExsltDatetime.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ExsltDatetime.java 5 Jun 2002 16:14:43 -0000 1.1
+++ ExsltDatetime.java 17 Jun 2002 20:06:00 -0000 1.2
@@ -634,10 +634,7 @@
if (dbl == Double.NaN)
return new XNumber(Double.NaN);
int yr = (int)dbl;
- Calendar cal = Calendar.getInstance();
- cal.set(Calendar.YEAR, yr);
- cal.set(Calendar.MONTH, Calendar.FEBRUARY);
- return new XBoolean(cal.getActualMaximum(cal.DAY_OF_MONTH)==29);
+ return new XBoolean(yr % 400 == 0 || (yr % 100 != 0 && yr % 4 == 0));
}
/**
@@ -646,8 +643,8 @@
public static XBoolean leapYear()
{
Calendar cal = Calendar.getInstance();
- cal.set(Calendar.MONTH, Calendar.FEBRUARY);
- return new XBoolean(cal.getActualMaximum(cal.DAY_OF_MONTH)==29);
+ int yr = (int)cal.get(Calendar.YEAR);
+ return new XBoolean(yr % 400 == 0 || (yr % 100 != 0 && yr % 4 == 0));
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]