From b8c86c6d07a8c404a696d908b0734af9493c0884 Mon Sep 17 00:00:00 2001 From: Tom Tromey <tromey@redhat.com> Date: Fri, 14 Feb 2003 17:43:34 +0000 Subject: System.java (properties): Use Properties.clone. * java/lang/System.java (properties): Use Properties.clone. (setProperties): Likewise. From-SVN: r62903 --- libjava/java/lang/System.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'libjava/java') diff --git a/libjava/java/lang/System.java b/libjava/java/lang/System.java index ab58425..2e7c031 100644 --- a/libjava/java/lang/System.java +++ b/libjava/java/lang/System.java @@ -1,5 +1,5 @@ /* System.java -- useful methods to interface with the system - Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -104,8 +104,10 @@ public final class System * {@link #setProperties(Properties)}, but will never be null, because * setProperties(null) sucks in the default properties. */ + // Note that we use clone here and not new. Some programs assume + // that the system properties do not have a parent. private static Properties properties - = new Properties(Runtime.defaultProperties); + = (Properties) Runtime.defaultProperties.clone(); /** * The standard InputStream. This is assigned at startup and starts its @@ -369,7 +371,11 @@ public final class System if (sm != null) sm.checkPropertiesAccess(); if (properties == null) - properties = new Properties(Runtime.defaultProperties); + { + // Note that we use clone here and not new. Some programs + // assume that the system properties do not have a parent. + properties = (Properties) Runtime.defaultProperties.clone(); + } System.properties = properties; } -- cgit v1.1