[vmkit-commits] [vmkit] r56210 - in /vmkit/branches/isolate/lib/JnJVM/Classpath: ClasspathConstructor.cpp.inc ClasspathMethod.cpp.inc
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Mon Sep 15 05:17:19 PDT 2008
Author: geoffray
Date: Mon Sep 15 07:17:19 2008
New Revision: 56210
URL: http://llvm.org/viewvc/llvm-project?rev=56210&view=rev
Log:
Use the right loader in a isolate environment.
Modified:
vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc
vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc
Modified: vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc?rev=56210&r1=56209&r2=56210&view=diff
==============================================================================
--- vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc (original)
+++ vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathConstructor.cpp.inc Mon Sep 15 07:17:19 2008
@@ -34,7 +34,14 @@
jobject cons) {
Jnjvm* vm = JavaThread::get()->isolate;
JavaMethod* meth = (JavaMethod*)(vm->upcalls->constructorSlot->getInt32Field((JavaObject*)cons));
+#ifdef MULTIPLE_VM
+ jclass Cl = (jclass)vm->upcalls->constructorClass->getInt32Field((JavaObject*)cons);
+ UserCommonClass* cl = NativeUtil::resolvedImplClass(Cl, false);
+ JnjvmClassLoader* loader = cl->classLoader;
+#else
JnjvmClassLoader* loader = meth->classDef->classLoader;
+#endif
+
return (jobject)(NativeUtil::getParameterTypes(loader, meth));
}
Modified: vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc?rev=56210&r1=56209&r2=56210&view=diff
==============================================================================
--- vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc (original)
+++ vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathMethod.cpp.inc Mon Sep 15 07:17:19 2008
@@ -62,7 +62,13 @@
jobject Meth) {
Jnjvm* vm = JavaThread::get()->isolate;
JavaMethod* meth = (JavaMethod*)vm->upcalls->methodSlot->getInt32Field((JavaObject*)Meth);
+#ifdef MULTIPLE_VM
+ jclass Cl = (jclass)vm->upcalls->methodClass->getInt32Field((JavaObject*)Meth);
+ UserCommonClass* cl = NativeUtil::resolvedImplClass(Cl, false);
+ JnjvmClassLoader* loader = cl->classLoader;
+#else
JnjvmClassLoader* loader = meth->classDef->classLoader;
+#endif
return (jobject)(NativeUtil::getParameterTypes(loader, meth));
}
More information about the vmkit-commits
mailing list