|
From: <ls...@us...> - 2007-09-22 12:08:39
|
Revision: 3519
http://jnode.svn.sourceforge.net/jnode/?rev=3519&view=rev
Author: lsantha
Date: 2007-09-22 05:08:36 -0700 (Sat, 22 Sep 2007)
Log Message:
-----------
Iniherit system properties in isolates.
Modified Paths:
--------------
trunk/core/src/classpath/ext/javax/isolate/Isolate.java
trunk/core/src/core/org/jnode/vm/isolate/VmIsolate.java
Modified: trunk/core/src/classpath/ext/javax/isolate/Isolate.java
===================================================================
--- trunk/core/src/classpath/ext/javax/isolate/Isolate.java 2007-09-22 12:07:49 UTC (rev 3518)
+++ trunk/core/src/classpath/ext/javax/isolate/Isolate.java 2007-09-22 12:08:36 UTC (rev 3519)
@@ -50,7 +50,7 @@
* @param args
*/
public Isolate(String mainClass, String[] args) {
- this(new StreamBindings(), new Properties(), mainClass, args);
+ this(new StreamBindings(), System.getProperties(), mainClass, args);
}
/**
Modified: trunk/core/src/core/org/jnode/vm/isolate/VmIsolate.java
===================================================================
--- trunk/core/src/core/org/jnode/vm/isolate/VmIsolate.java 2007-09-22 12:07:49 UTC (rev 3518)
+++ trunk/core/src/core/org/jnode/vm/isolate/VmIsolate.java 2007-09-22 12:08:36 UTC (rev 3519)
@@ -125,6 +125,8 @@
*/
private IOContext ioContext = vmIoContext;
+ private Properties initProperties;
+
/**
* Isolate states.
*
@@ -205,6 +207,7 @@
public VmIsolate(Isolate isolate, VmStreamBindings bindings,
Properties properties, String mainClass, String[] args) {
StaticData.isolates.add(this);
+ this.initProperties = properties;
this.isolate = isolate;
this.mainClass = mainClass;
this.args = args;
@@ -537,6 +540,12 @@
final Method mainMethod = cls.getMethod("main",
IsolatedStaticData.mainTypes);
+ //inherit properties
+ Properties sys_porps = System.getProperties();
+ for( String prop : initProperties.stringPropertyNames()){
+ sys_porps.setProperty(prop, initProperties.getProperty(prop));
+ }
+
// Run main method.
mainMethod.invoke(null, new Object[] { args });
} catch (Throwable ex) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|