changeset 1688:b8b498cda0b0

PR377. SimpleTimeZone checks too strict for Asia/Amman TimeZone. * overlays/openjdk/jdk/test/java/util/SimpleTimeZone/EndOfDay.java: New test. * patches/icedtea-simpletimezone-relax.patch: New patch. * Makefile.am: Add new patch. * HACKING: Describe new patch.
author Mark Wielaard <mark@klomp.org>
date Sun, 30 Aug 2009 17:58:20 +0200
parents 188db4af2dc5
children 21edcf84dc76
files ChangeLog HACKING Makefile.am overlays/openjdk/jdk/test/java/util/SimpleTimeZone/EndOfDay.java patches/icedtea-simpletimezone-relax.patch
diffstat 5 files changed, 58 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Fri Aug 28 09:18:57 2009 -0400
+++ b/ChangeLog	Sun Aug 30 17:58:20 2009 +0200
@@ -1,3 +1,12 @@
+2009-08-30  Mark Wielaard  <mark@klomp.org>
+
+	PR377. SimpleTimeZone checks too strict for Asia/Amman TimeZone.
+	* overlays/openjdk/jdk/test/java/util/SimpleTimeZone/EndOfDay.java:
+	New test.
+	* patches/icedtea-simpletimezone-relax.patch: New patch.
+	* Makefile.am: Add new patch.
+	* HACKING: Describe new patch.
+
 2009-08-28  Gary Benson  <gbenson@redhat.com>
 
 	* patches/icedtea-cc-interp-backedge.patch: Various fixes
--- a/HACKING	Fri Aug 28 09:18:57 2009 -0400
+++ b/HACKING	Sun Aug 30 17:58:20 2009 +0200
@@ -114,8 +114,10 @@
 * icedtea-lucene-crash.patch: Fix lucene bad code generation bug #6707044.
 * icedtea-6700047-loopopts.patch: Fix partial peeling issue, bug #6700047.
 * icedtea-6712835-ifnode.patch: Fix infinite loop in PhaseIterGVN::transform.
-* icedtea-timezone.patch : Makes java only look for time zone information in /etc/sysconfig/clock if /etc/localtime is not found (fix 
-  for rh-489586)
+* icedtea-timezone.patch : Makes java only look for time zone information in
+  /etc/sysconfig/clock if /etc/localtime is not found (fix for rh-489586)
+* icedtea-simpletimezone-relax.patch: Fix for PR377, Jordan end of day rule
+  in Asia/Amman TimeZone. SimpleTimeZone checks too strict.
 * icedtea-dnd-filelists.patch: Fix drag and drop behaviour when dragging a file list between JVMs (S5079469). Backported from OpenJDK.
 * icedtea-signed-types-hot6.patch: Make use of unsigned/signed types explicit.
 * openjdk/6648816.patch: Backport of regression (NPE) fix in AccessControlContext
--- a/Makefile.am	Fri Aug 28 09:18:57 2009 -0400
+++ b/Makefile.am	Sun Aug 30 17:58:20 2009 +0200
@@ -540,6 +540,7 @@
 	patches/icedtea-rmi_amd64.patch \
 	patches/icedtea-tools.patch \
 	patches/icedtea-timezone.patch \
+	patches/icedtea-simpletimezone-relax.patch \
 	patches/icedtea-use-system-tzdata.patch \
 	patches/icedtea-headers.patch \
 	patches/hotspot/$(HSBUILD)/icedtea-headers.patch \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/overlays/openjdk/jdk/test/java/util/SimpleTimeZone/EndOfDay.java	Sun Aug 30 17:58:20 2009 +0200
@@ -0,0 +1,23 @@
+/*
+ * @test
+ * @bug 0000377
+ * @summary SimpleTimeZone should accept start/end rules at end of day
+ */
+
+import java.util.Calendar;
+import java.util.SimpleTimeZone;
+
+public class EndOfDay
+{
+  public static void main(String[] args)
+  {
+    SimpleTimeZone stz;
+    stz = new SimpleTimeZone(0, "End/Day",
+			     Calendar.MARCH, -1, Calendar.FRIDAY,
+			     24 * 60 * 60 * 1000,
+			     Calendar.APRIL, 1, Calendar.THURSDAY,
+			     24 * 60 * 60 * 1000,
+			     3600000);
+    System.err.println(stz);
+  }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/icedtea-simpletimezone-relax.patch	Sun Aug 30 17:58:20 2009 +0200
@@ -0,0 +1,21 @@
+diff -r 348fce38de3f src/share/classes/java/util/SimpleTimeZone.java
+--- openjdk/jdk/src/share/classes/java/util/SimpleTimeZone.java	Fri Jun 26 19:50:44 2009 +0400
++++ openjdk/jdk/src/share/classes/java/util/SimpleTimeZone.java	Sat Aug 29 22:36:41 2009 +0200
+@@ -1372,7 +1372,7 @@
+                 throw new IllegalArgumentException(
+                         "Illegal start month " + startMonth);
+             }
+-            if (startTime < 0 || startTime >= millisPerDay) {
++            if (startTime < 0 || startTime > millisPerDay) {
+                 throw new IllegalArgumentException(
+                         "Illegal start time " + startTime);
+             }
+@@ -1419,7 +1419,7 @@
+                 throw new IllegalArgumentException(
+                         "Illegal end month " + endMonth);
+             }
+-            if (endTime < 0 || endTime >= millisPerDay) {
++            if (endTime < 0 || endTime > millisPerDay) {
+                 throw new IllegalArgumentException(
+                         "Illegal end time " + endTime);
+             }