* src/threads/thread.hpp (thread_set_object, thread_get_object): Removed.
[cacao.git] / src / native / vm / openjdk / jvm.cpp
index 945f22157a3d6556bc1e28753fa81e496a0d661b..0d365146f0e398fb44aa2bdfa738b5a9b414d024 100644 (file)
@@ -1,6 +1,6 @@
 /* src/native/vm/openjdk/jvm.cpp - HotSpot VM interface functions
 
-   Copyright (C) 2007, 2008, 2009
+   Copyright (C) 1996-2011
    CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
    Copyright (C) 2009 Theobroma Systems Ltd.
 
@@ -653,6 +653,25 @@ void JVM_ResolveClass(JNIEnv* env, jclass cls)
 }
 
 
+/* JVM_FindClassFromBootLoader */
+
+jclass JVM_FindClassFromBootLoader(JNIEnv* env, const char* name)
+{
+       classinfo     *c;
+       utf           *u;
+
+       TRACEJVMCALLS(("JVM_FindClassFromBootLoader(name=%s)", name));
+
+       u  = utf_new_char(name);
+       c = load_class_from_classloader(u, NULL);
+
+       if (c == NULL)
+               return NULL;
+
+       return (jclass) LLNI_classinfo_wrap(c);
+}
+
+
 /* JVM_FindClassFromClassLoader */
 
 jclass JVM_FindClassFromClassLoader(JNIEnv* env, const char* name, jboolean init, jobject loader, jboolean throwError)
@@ -3231,7 +3250,7 @@ jobjectArray JVM_GetAllThreads(JNIEnv *env, jclass dummy)
        for (List<threadobject*>::iterator it = active_threads.begin(); it != active_threads.end(); it++) {
                threadobject* t = *it;
 
-               java_handle_t* h = thread_get_object(t);
+               java_handle_t* h = LLNI_WRAP(t->object);
                assert(h != NULL);
 
                oa.set_element(index, h);