re PR libgcj/1358 (java.util.Date.toString() doesn't seem to behave properly.)

Fix for PR libgcj/1358:
	* java/lang/System.java: Update Copyright date properly.
	* java/util/Calendar.java: Fix typo in comment.
	(set): Set 24-hour clock hour instead of 12-hour clock hour.
	* java/util/GregorianCalendar.java (GregorianCalendar): Properly
	initialize times.  Spec says to set H:M:S values to zero only if
	a date is given.
	* java/util/TimeZone.java (getDefaultDisplayName): Casts to char
	needed for evaluating numbers '0' to '9' in printouts of GMT offsets.
	* java/util/natGregorianCalendar.cc (computeTime): Properly handle
	timezones and GMT offsets, being careful to account for units of
	milliseconds vs. seconds.

From-SVN: r38508
This commit is contained in:
Warren Levy 2000-12-28 05:55:56 +00:00 committed by Warren Levy
parent 5da1e2c489
commit ed55bdc47f
6 changed files with 30 additions and 16 deletions

View file

@ -39,16 +39,17 @@ java::util::GregorianCalendar::computeTime ()
// Adjust for local timezone (introduced by mktime) and our
// timezone.
#if defined (STRUCT_TM_HAS_GMTOFF)
t += tim.tm_gmtoff;
t -= tim.tm_gmtoff;
#elif defined (HAVE_TIMEZONE)
t -= timezone;
t += timezone;
#endif
java::util::TimeZone *zone = getTimeZone ();
t += zone->getRawOffset();
// Adjust for milliseconds.
time = t * (jlong) 1000 + elements(fields)[MILLISECOND];
// Now adjust for the real timezone, i.e. our timezone, which is in millis.
java::util::TimeZone *zone = getTimeZone ();
time += zone->getRawOffset();
isTimeSet = true;
}