diff options
author | Tom Tromey <tromey@cygnus.com> | 2000-04-20 05:49:48 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2000-04-20 05:49:48 +0000 |
commit | af98124ef9a698e8b82e4e794fd421ea0ccb3054 (patch) | |
tree | 28cabe5367d6c64b2d9309b330e806b228ed8eb7 /libjava/jni.cc | |
parent | 807bc1db3dea6d5c6bfdb228df6c207d65462e9a (diff) | |
download | gcc-af98124ef9a698e8b82e4e794fd421ea0ccb3054.zip gcc-af98124ef9a698e8b82e4e794fd421ea0ccb3054.tar.gz gcc-af98124ef9a698e8b82e4e794fd421ea0ccb3054.tar.bz2 |
jni.cc (_Jv_JNI_FindClass): Use system class loader if class doesn't have a loader.
* jni.cc (_Jv_JNI_FindClass): Use system class loader if class
doesn't have a loader.
From-SVN: r33272
Diffstat (limited to 'libjava/jni.cc')
-rw-r--r-- | libjava/jni.cc | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/libjava/jni.cc b/libjava/jni.cc index ea2f039..cd45ab8 100644 --- a/libjava/jni.cc +++ b/libjava/jni.cc @@ -424,15 +424,16 @@ _Jv_JNI_FindClass (JNIEnv *env, const char *name) // This might throw an out of memory exception. jstring n = JvNewStringUTF (s); - java::lang::ClassLoader *loader; - if (env->klass == NULL) + java::lang::ClassLoader *loader = NULL; + if (env->klass != NULL) + loader = env->klass->getClassLoader (); + + if (loader == NULL) { // FIXME: should use getBaseClassLoader, but we don't have that // yet. loader = java::lang::ClassLoader::getSystemClassLoader (); } - else - loader = env->klass->getClassLoader (); r = loader->loadClass (n); } |