[vmkit-commits] [vmkit] r56237 - /vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Mon Sep 15 22:39:15 PDT 2008
Author: geoffray
Date: Tue Sep 16 00:39:15 2008
New Revision: 56237
URL: http://llvm.org/viewvc/llvm-project?rev=56237&view=rev
Log:
Get the class loader of the user class, not of the class.
Modified:
vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc
Modified: vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc?rev=56237&r1=56236&r2=56237&view=diff
==============================================================================
--- vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc (original)
+++ vmkit/branches/isolate/lib/JnJVM/Classpath/ClasspathVMField.cpp.inc Tue Sep 16 00:39:15 2008
@@ -47,7 +47,13 @@
jobject obj) {
Jnjvm* vm = JavaThread::get()->isolate;
JavaField* field = (JavaField*)vm->upcalls->fieldSlot->getInt32Field((JavaObject*)obj);
+#ifdef MULTIPLE_VM
+ jclass Cl = (jclass)vm->upcalls->fieldClass->getInt32Field((JavaObject*)obj);
+ UserClass* fieldCl = (UserClass*)NativeUtil::resolvedImplClass(Cl, false);
+ JnjvmClassLoader* loader = fieldCl->classLoader;
+#else
JnjvmClassLoader* loader = field->classDef->classLoader;
+#endif
UserCommonClass* cl = field->getSignature()->assocClass(loader);
return (jclass)cl->getClassDelegatee(vm);
}
More information about the vmkit-commits
mailing list