[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