aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/util/Calendar.java
diff options
context:
space:
mode:
authorBryce McKinlay <mckinlay@redhat.com>2004-10-10 16:19:37 +0000
committerBryce McKinlay <bryce@gcc.gnu.org>2004-10-10 17:19:37 +0100
commit0ba09d8fc65f306909c11b68c67030a3c6ca13c2 (patch)
tree24be0ef56d3c74ad47155697e7641564c0c6fad0 /libjava/java/util/Calendar.java
parent711f836923656e4f736eb4a743f0960ade959ff6 (diff)
downloadgcc-0ba09d8fc65f306909c11b68c67030a3c6ca13c2.zip
gcc-0ba09d8fc65f306909c11b68c67030a3c6ca13c2.tar.gz
gcc-0ba09d8fc65f306909c11b68c67030a3c6ca13c2.tar.bz2
Calendar.java (set): Invalidate DST_OFFSET field as a DST boundary may have been crossed.
2004-10-08 Bryce McKinlay <mckinlay@redhat.com> * java/util/Calendar.java (set): Invalidate DST_OFFSET field as a DST boundary may have been crossed. * java/util/GregorianCalendar.java (add): Throw IllegalArgumentException on attempt to add to DST_OFFSET or ZONE_OFFSET fields. Update javadoc. From-SVN: r88847
Diffstat (limited to 'libjava/java/util/Calendar.java')
-rw-r--r--libjava/java/util/Calendar.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/libjava/java/util/Calendar.java b/libjava/java/util/Calendar.java
index 05d48c2..6e9eda9 100644
--- a/libjava/java/util/Calendar.java
+++ b/libjava/java/util/Calendar.java
@@ -651,6 +651,10 @@ public abstract class Calendar implements Serializable, Cloneable
isSet[HOUR_OF_DAY] = false;
break;
}
+
+ // May have crossed over a DST boundary.
+ if (field != DST_OFFSET && field != ZONE_OFFSET)
+ isSet[DST_OFFSET] = false;
}
/**
@@ -671,6 +675,8 @@ public abstract class Calendar implements Serializable, Cloneable
isSet[WEEK_OF_MONTH] = false;
isSet[DAY_OF_WEEK] = false;
isSet[DAY_OF_WEEK_IN_MONTH] = false;
+
+ isSet[DST_OFFSET] = false; // May have crossed a DST boundary.
}
/**