Hi again,

This commit changes the default for DAY_OF_WEEK_IN_MONTH to match
Sun's implementation, and adds a couple of comments explaining
what might otherwise look like odd decisions.

Cheers,
Gary
Index: ChangeLog
===================================================================
RCS file: /cvsroot/classpath/classpath/ChangeLog,v
retrieving revision 1.9239.2.3
diff -u -r1.9239.2.3 ChangeLog
--- ChangeLog   13 Apr 2007 08:12:36 -0000      1.9239.2.3
+++ ChangeLog   13 Apr 2007 09:17:23 -0000
@@ -1,3 +1,9 @@
+2007-04-13  Gary Benson  <[EMAIL PROTECTED]>
+
+       * java/util/GregorianCalendar.java
+       (setDefaultFields): Change DAY_OF_WEEK_IN_MONTH default,
+       and add some comments.
+
 2007-04-13  Gary Benson  <[EMAIL PROTECTED]>
 
        * java/util/Calendar.java
Index: java/util/GregorianCalendar.java
===================================================================
RCS file: /cvsroot/classpath/classpath/java/util/GregorianCalendar.java,v
retrieving revision 1.49.4.2
diff -u -r1.49.4.2 GregorianCalendar.java
--- java/util/GregorianCalendar.java    13 Apr 2007 08:12:37 -0000      1.49.4.2
+++ java/util/GregorianCalendar.java    13 Apr 2007 09:17:23 -0000
@@ -500,11 +500,15 @@
    */
   private void setDefaultFields()
   {
+    // According to the spec DAY_OF_WEEK_IN_MONTH defaults to 1,
+    // but Sun set it to 0 so we do too.
     int[] defaults = {
-      AD, 1970, JANUARY, 0, 0, 1, 0, -1, 1, AM, 0, 0, 0, 0, 0, 0, 0
+      AD, 1970, JANUARY, 0, 0, 1, 0, -1, 0, AM, 0, 0, 0, 0, 0, 0, 0
     };
     System.arraycopy(defaults, 0, fields, 0, FIELD_COUNT);
     fields[DAY_OF_WEEK] = getFirstDayOfWeek();
+    // It seems odd that a call to computeTime() should cause
+    // areFieldsSet to become true, but that's what Sun do...
     areFieldsSet = true;
   }
   

Reply via email to