Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 86861 invoked from network); 23 Jul 2007 05:52:00 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 Jul 2007 05:52:00 -0000 Received: (qmail 44390 invoked by uid 500); 23 Jul 2007 05:52:01 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 44372 invoked by uid 500); 23 Jul 2007 05:52:01 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 44355 invoked by uid 99); 23 Jul 2007 05:52:01 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 22 Jul 2007 22:52:01 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 22 Jul 2007 22:51:59 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id CE30C1A9820; Sun, 22 Jul 2007 22:51:38 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r558609 [2/2] - in /harmony/enhanced/classlib/branches/java6/modules: awt/ awt/src/main/java/common/java/awt/dnd/ awt/src/main/java/common/org/apache/harmony/awt/gl/ awt/src/main/java/common/org/apache/harmony/awt/internal/nls/ awt/src/main... Date: Mon, 23 Jul 2007 05:51:37 -0000 To: commits@harmony.apache.org From: pyang@apache.org X-Mailer: svnmailer-1.1.0 Message-Id: <20070723055138.CE30C1A9820@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Modified: harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockBean4StaticField.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockBean4StaticField.java?view=diff&rev=558609&r1=558608&r2=558609 ============================================================================== --- harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockBean4StaticField.java (original) +++ harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockBean4StaticField.java Sun Jul 22 22:51:34 2007 @@ -23,6 +23,7 @@ @Override public boolean equals(Object o) { + if(!(o instanceof MockBean4StaticField))return false; return (o.getClass().equals(this.getClass()) && this.v == ((MockBean4StaticField) o).v); } Modified: harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockInterfaceBeanInfo.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockInterfaceBeanInfo.java?view=diff&rev=558609&r1=558608&r2=558609 ============================================================================== --- harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockInterfaceBeanInfo.java (original) +++ harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockInterfaceBeanInfo.java Sun Jul 22 22:51:34 2007 @@ -19,7 +19,6 @@ import java.beans.EventSetDescriptor; import java.beans.IntrospectionException; -import java.beans.PropertyChangeListener; import java.beans.PropertyDescriptor; import java.beans.SimpleBeanInfo; Modified: harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockJavaBean.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockJavaBean.java?view=diff&rev=558609&r1=558608&r2=558609 ============================================================================== --- harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockJavaBean.java (original) +++ harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockJavaBean.java Sun Jul 22 22:51:34 2007 @@ -47,6 +47,7 @@ private boolean booleanProperty; + @SuppressWarnings("unused") private int propertyWithoutGet; private String propertyWithDifferentGetSet; @@ -63,6 +64,7 @@ private int propertyWithIsGet; + @SuppressWarnings("unused") private int propertyWithVoidGet; public Void getPropertyWithVoidGet() { Modified: harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockSubClassBeanInfo.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockSubClassBeanInfo.java?view=diff&rev=558609&r1=558608&r2=558609 ============================================================================== --- harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockSubClassBeanInfo.java (original) +++ harmony/enhanced/classlib/branches/java6/modules/beans/src/test/support/java/org/apache/harmony/beans/tests/support/mock/MockSubClassBeanInfo.java Sun Jul 22 22:51:34 2007 @@ -21,7 +21,6 @@ import java.beans.EventSetDescriptor; import java.beans.IntrospectionException; import java.beans.Introspector; -import java.beans.PropertyChangeListener; import java.beans.PropertyDescriptor; import java.beans.SimpleBeanInfo; Modified: harmony/enhanced/classlib/branches/java6/modules/luni/src/main/java/java/util/GregorianCalendar.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/luni/src/main/java/java/util/GregorianCalendar.java?view=diff&rev=558609&r1=558608&r2=558609 ============================================================================== --- harmony/enhanced/classlib/branches/java6/modules/luni/src/main/java/java/util/GregorianCalendar.java (original) +++ harmony/enhanced/classlib/branches/java6/modules/luni/src/main/java/java/util/GregorianCalendar.java Sun Jul 22 22:51:34 2007 @@ -1133,73 +1133,90 @@ isCached = false; complete(); + int days, day, mod, maxWeeks, newWeek; int max = -1; switch (field) { - case YEAR: - max = maximums[field]; - break; - case WEEK_OF_YEAR: - case WEEK_OF_MONTH: - int days, - day; - if (field == WEEK_OF_YEAR) { - days = daysInYear(fields[YEAR]); - day = DAY_OF_YEAR; + case YEAR: + max = maximums[field]; + break; + case WEEK_OF_YEAR: + days = daysInYear(fields[YEAR]); + day = DAY_OF_YEAR; + mod = mod7(fields[DAY_OF_WEEK] - fields[day] + - (getFirstDayOfWeek() - 1)); + maxWeeks = (days - 1 + mod) / 7 + 1; + newWeek = mod(fields[field] - 1 + value, maxWeeks) + 1; + if (newWeek == maxWeeks) { + int addDays = (newWeek - fields[field]) * 7; + if (fields[day] > addDays && fields[day] + addDays > days) { + set(field, 1); } else { - days = daysInMonth(); - day = DATE; + set(field, newWeek - 1); } - int mod = mod7(fields[DAY_OF_WEEK] - fields[day] - - (getFirstDayOfWeek() - 1)); - int maxWeeks = (days - 1 + mod) / 7 + 1; - int newWeek = mod(fields[field] - 1 + value, maxWeeks) + 1; - if (newWeek == maxWeeks) { - int addDays = (newWeek - fields[field]) * 7; - if (fields[day] > addDays && fields[day] + addDays > days) { - set(field, 1); - } else { - set(field, newWeek - 1); - } - } else if (newWeek == 1) { - int week = (fields[day] - ((fields[day] - 1) / 7 * 7) - 1 + mod) / 7 + 1; - if (week > 1) { - set(field, 1); - } else { - set(field, newWeek); - } + } else if (newWeek == 1) { + int week = (fields[day] - ((fields[day] - 1) / 7 * 7) - 1 + mod) / 7 + 1; + if (week > 1) { + set(field, 1); } else { set(field, newWeek); } - break; - case DATE: - max = daysInMonth(); - break; - case DAY_OF_YEAR: - max = daysInYear(fields[YEAR]); - break; - case DAY_OF_WEEK: - max = maximums[field]; - lastDateFieldSet = WEEK_OF_MONTH; - break; - case DAY_OF_WEEK_IN_MONTH: - max = (fields[DATE] + ((daysInMonth() - fields[DATE]) / 7 * 7) - 1) / 7 + 1; - break; - - case ERA: - case MONTH: - case AM_PM: - case HOUR: - case HOUR_OF_DAY: - case MINUTE: - case SECOND: - case MILLISECOND: - set(field, mod(fields[field] + value, maximums[field] + 1)); - if (field == MONTH && fields[DATE] > daysInMonth()) { - set(DATE, daysInMonth()); - } else if (field == AM_PM) { - lastTimeFieldSet = HOUR; + } else { + set(field, newWeek); + } + break; + case WEEK_OF_MONTH: + days = daysInMonth(); + day = DATE; + mod = mod7(fields[DAY_OF_WEEK] - fields[day] + - (getFirstDayOfWeek() - 1)); + maxWeeks = (days - 1 + mod) / 7 + 1; + newWeek = mod(fields[field] - 1 + value, maxWeeks) + 1; + if (newWeek == maxWeeks) { + if (fields[day] + (newWeek - fields[field]) * 7 > days) { + set(day, days); + } else { + set(field, newWeek); } - break; + } else if (newWeek == 1) { + int week = (fields[day] - ((fields[day] - 1) / 7 * 7) - 1 + mod) / 7 + 1; + if (week > 1) { + set(day, 1); + } else { + set(field, newWeek); + } + } else { + set(field, newWeek); + } + break; + case DATE: + max = daysInMonth(); + break; + case DAY_OF_YEAR: + max = daysInYear(fields[YEAR]); + break; + case DAY_OF_WEEK: + max = maximums[field]; + lastDateFieldSet = WEEK_OF_MONTH; + break; + case DAY_OF_WEEK_IN_MONTH: + max = (fields[DATE] + ((daysInMonth() - fields[DATE]) / 7 * 7) - 1) / 7 + 1; + break; + + case ERA: + case MONTH: + case AM_PM: + case HOUR: + case HOUR_OF_DAY: + case MINUTE: + case SECOND: + case MILLISECOND: + set(field, mod(fields[field] + value, maximums[field] + 1)); + if (field == MONTH && fields[DATE] > daysInMonth()) { + set(DATE, daysInMonth()); + } else if (field == AM_PM) { + lastTimeFieldSet = HOUR; + } + break; } if (max != -1) { set(field, mod(fields[field] - 1 + value, max) + 1); Modified: harmony/enhanced/classlib/branches/java6/modules/luni/src/main/java/java/util/Hashtable.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/luni/src/main/java/java/util/Hashtable.java?view=diff&rev=558609&r1=558608&r2=558609 ============================================================================== --- harmony/enhanced/classlib/branches/java6/modules/luni/src/main/java/java/util/Hashtable.java (original) +++ harmony/enhanced/classlib/branches/java6/modules/luni/src/main/java/java/util/Hashtable.java Sun Jul 22 22:51:34 2007 @@ -228,8 +228,8 @@ if (entry != null) { return true; } - while (--start >= firstSlot) { - if (elementData[start] != null) { + while (start > firstSlot) { + if (elementData[--start] != null) { entry = elementData[start]; return true; } Modified: harmony/enhanced/classlib/branches/java6/modules/luni/src/test/api/common/tests/api/java/util/GregorianCalendarTest.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/luni/src/test/api/common/tests/api/java/util/GregorianCalendarTest.java?view=diff&rev=558609&r1=558608&r2=558609 ============================================================================== --- harmony/enhanced/classlib/branches/java6/modules/luni/src/test/api/common/tests/api/java/util/GregorianCalendarTest.java (original) +++ harmony/enhanced/classlib/branches/java6/modules/luni/src/test/api/common/tests/api/java/util/GregorianCalendarTest.java Sun Jul 22 22:51:34 2007 @@ -604,6 +604,21 @@ assertEquals("Wrong month: " + cal.getTime(), Calendar.DECEMBER, cal .get(Calendar.MONTH)); assertEquals("Wrong date: " + cal.getTime(), 23, cal.get(Calendar.DATE)); + + // Regression for HARMONY-4510 + cal.set(1999, Calendar.DECEMBER, 31, 23, 59, 59); + cal.roll(GregorianCalendar.WEEK_OF_YEAR, true); + assertEquals("Wrong year: " + cal.getTime(), 1999, cal + .get(Calendar.YEAR)); + assertEquals("Wrong month: " + cal.getTime(), Calendar.JANUARY, cal + .get(Calendar.MONTH)); + assertEquals("Wrong date: " + cal.getTime(), 8, cal.get(Calendar.DATE)); + cal.roll(GregorianCalendar.WEEK_OF_YEAR, false); + assertEquals("Wrong year: " + cal.getTime(), 1999, cal + .get(Calendar.YEAR)); + assertEquals("Wrong month: " + cal.getTime(), Calendar.DECEMBER, cal + .get(Calendar.MONTH)); + assertEquals("Wrong date: " + cal.getTime(), 31, cal.get(Calendar.DATE)); } /**