From 96203d2041141190bc138dbac714b468d021c74d Mon Sep 17 00:00:00 2001 From: Stefan Bodewig Date: Fri, 15 Feb 2002 15:05:41 +0000 Subject: [PATCH] Fix sysproperty handling (testcase fails for old code and passes for new code). git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271366 13f79535-47bb-0310-9956-ffa450edef68 --- src/main/org/apache/tools/ant/types/CommandlineJava.java | 8 ++++++-- .../org/apache/tools/ant/types/CommandlineJavaTest.java | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/org/apache/tools/ant/types/CommandlineJava.java b/src/main/org/apache/tools/ant/types/CommandlineJava.java index 9034778d2..b7cdab370 100644 --- a/src/main/org/apache/tools/ant/types/CommandlineJava.java +++ b/src/main/org/apache/tools/ant/types/CommandlineJava.java @@ -111,8 +111,12 @@ public class CommandlineJava implements Cloneable { public void setSystem() throws BuildException { try { - Properties p = new Properties(sys = System.getProperties()); - + sys = System.getProperties(); + Properties p = new Properties(); + for (Enumeration e = sys.keys(); e.hasMoreElements(); ) { + Object o = e.nextElement(); + p.put(o, sys.get(o)); + } for (Enumeration e = variables.elements(); e.hasMoreElements(); ) { Environment.Variable v = (Environment.Variable) e.nextElement(); p.put(v.getKey(), v.getValue()); diff --git a/src/testcases/org/apache/tools/ant/types/CommandlineJavaTest.java b/src/testcases/org/apache/tools/ant/types/CommandlineJavaTest.java index 2cd7d7e77..9eda7fd76 100644 --- a/src/testcases/org/apache/tools/ant/types/CommandlineJavaTest.java +++ b/src/testcases/org/apache/tools/ant/types/CommandlineJavaTest.java @@ -150,6 +150,7 @@ public class CommandlineJavaTest extends TestCase { assertEquals(currentClasspath, newClasspath); assertNotNull(System.getProperty("key")); assertEquals("value", System.getProperty("key")); + assertTrue(System.getProperties().containsKey("java.class.path")); } finally { c.restoreSystemProperties(); }