aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/util/TimeZone.java
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2002-05-13 20:10:37 +0000
committerTom Tromey <tromey@gcc.gnu.org>2002-05-13 20:10:37 +0000
commit86397868159ba8c7ba20d56fdf49f551a512a1f1 (patch)
tree8d55a2017b3cd999dc25fd24a3e201558e07756e /libjava/java/util/TimeZone.java
parent16133d00586de86b5d77c3b5f5833c6485ca697c (diff)
downloadgcc-86397868159ba8c7ba20d56fdf49f551a512a1f1.zip
gcc-86397868159ba8c7ba20d56fdf49f551a512a1f1.tar.gz
gcc-86397868159ba8c7ba20d56fdf49f551a512a1f1.tar.bz2
re PR libgcj/6389 (System.getProperty("") should always throw an IllegalArgumentException)
Fixes PR libgcj/6389: * Makefile.in: Rebuilt. * Makefile.am (nat_source_files): Added natTimeZone.cc. * java/util/natTimeZone.cc: New file. * java/util/TimeZone.java (getDefaultTimeZoneId): New method. * java/lang/System.java: Merged with Classpath. * java/lang/Runtime.java: Merged with Classpath. * java/lang/natSystem.cc (setErr0): Renamed from setErr; don't run security check. (setIn0): Renamed from setIn; don't run security check. (setOut0): Renamed from setOut; don't run security check. (file_encoding, getpwuid_adaptor, getSystemTimeZone, init_properties): Moved to natRuntime.cc. Moved many includes to natRuntime.cc. (isWordsBigEndian): New method. * java/lang/natRuntime.cc: Include Long.h, also other includes previously in natSystem.cc. (maxMemory): New function. (exitInternal): Renamed from `_exit'. (exit): Removed. (init): Don't set finalize_on_exit. (exitInternal): Use `finalizeOnExit'. (file_encoding, getpwuid_adaptor): New functions from natSystem.cc. (insertSystemProperties): New method, renamed from System::init_properties. Don't set user.timezone. (_load): Don't call checkLink. (execInternal): New method. (availableProcessors): Likewise. (nativeGetLibname): Likewise. From-SVN: r53429
Diffstat (limited to 'libjava/java/util/TimeZone.java')
-rw-r--r--libjava/java/util/TimeZone.java23
1 files changed, 20 insertions, 3 deletions
diff --git a/libjava/java/util/TimeZone.java b/libjava/java/util/TimeZone.java
index 974065a..eba2236 100644
--- a/libjava/java/util/TimeZone.java
+++ b/libjava/java/util/TimeZone.java
@@ -1,5 +1,5 @@
/* java.util.TimeZone
- Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -38,6 +38,7 @@ exception statement from your version. */
package java.util;
import java.text.DateFormatSymbols;
+import gnu.classpath.Configuration;
/**
* This class represents a time zone offset and handles daylight savings.
@@ -753,16 +754,32 @@ public abstract class TimeZone implements java.io.Serializable, Cloneable
/* Look up default timezone */
static
{
- // System.loadLibrary("javautil");
-
+ if (Configuration.INIT_LOAD_LIBRARY)
+ {
+ System.loadLibrary("javautil");
+ }
String tzid = System.getProperty("user.timezone");
if (tzid == null)
+ tzid = getDefaultTimeZoneId();
+
+ if (tzid == null)
tzid = "GMT";
defaultZone = getTimeZone(tzid);
}
+ /* This method returns us a time zone id string which is in the
+ form <standard zone name><GMT offset><daylight time zone name>.
+ The GMT offset is in seconds, except where it is evenly divisible
+ by 3600, then it is in hours. If the zone does not observe
+ daylight time, then the daylight zone name is omitted. Examples:
+ in Chicago, the timezone would be CST6CDT. In Indianapolis
+ (which does not have Daylight Savings Time) the string would
+ be EST5
+ */
+ private static native String getDefaultTimeZoneId();
+
/**
* Gets the time zone offset, for current date, modified in case of
* daylight savings. This is the offset to add to UTC to get the local