diff options
| author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-10-18 22:57:07 +0000 |
|---|---|---|
| committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-10-18 22:57:07 +0000 |
| commit | 67c4a081aecfc4b8d030a445130d07fc252f6a47 (patch) | |
| tree | 5e0312d5dc7025957805d8741fe055e5009fc512 /libjava/java/lang | |
| parent | 242d4252bf2d9e580abb3b2298293ce75cb8309e (diff) | |
| download | ppe42-gcc-67c4a081aecfc4b8d030a445130d07fc252f6a47.tar.gz ppe42-gcc-67c4a081aecfc4b8d030a445130d07fc252f6a47.zip | |
* gnu/gcj/runtime/VMClassLoader.java (getVMClassLoader): New
method.
(redirect): New static field.
* java/lang/ClassLoader.java (getSystemClassLoader): Now
native
(getVMClassLoader0): Removed.
* java/lang/natClassLoader.cc (getVMClassLoader0): Removed.
(redirect): Removed.
(getSystemClassLoader): Implemented.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30075 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/lang')
| -rw-r--r-- | libjava/java/lang/ClassLoader.java | 8 | ||||
| -rw-r--r-- | libjava/java/lang/natClassLoader.cc | 13 |
2 files changed, 7 insertions, 14 deletions
diff --git a/libjava/java/lang/ClassLoader.java b/libjava/java/lang/ClassLoader.java index f04868d94e6..dab546ead67 100644 --- a/libjava/java/lang/ClassLoader.java +++ b/libjava/java/lang/ClassLoader.java @@ -34,13 +34,7 @@ public abstract class ClassLoader { return parent; } - private static native ClassLoader getVMClassLoader0 (); - - static public ClassLoader getSystemClassLoader () { - if (system == null) - system = getVMClassLoader0 (); - return system; - } + public static native ClassLoader getSystemClassLoader (); /** * Creates a <code>ClassLoader</code> with no parent. diff --git a/libjava/java/lang/natClassLoader.cc b/libjava/java/lang/natClassLoader.cc index af4a4fab632..ee5f2e78e85 100644 --- a/libjava/java/lang/natClassLoader.cc +++ b/libjava/java/lang/natClassLoader.cc @@ -48,14 +48,13 @@ extern java::lang::Class ClassLoaderClass; /////////// java.lang.ClassLoader native methods //////////// -static gnu::gcj::runtime::VMClassLoader *redirect = 0; - -java::lang::ClassLoader* -java::lang::ClassLoader::getVMClassLoader0 () +java::lang::ClassLoader * +java::lang::ClassLoader::getSystemClassLoader (void) { - if (redirect == 0) - redirect = new gnu::gcj::runtime::VMClassLoader; - return redirect; + JvSynchronize sync (&ClassLoaderClass); + if (! system) + system = gnu::gcj::runtime::VMClassLoader::getVMClassLoader (); + return system; } void |

