* src/threads/thread.cpp: Break a reference cycle.
[cacao.git] / src / threads / thread-openjdk.cpp
index ff46e9d6f8ff6b06dd2d4ee9f343af32b46cd21c..e274b30b4918b67c3945fb6d4472dd33a5157093 100644 (file)
@@ -87,7 +87,7 @@ void ThreadRuntimeOpenjdk::print_thread_name(const java_lang_Thread& jlt, FILE *
 void ThreadRuntimeOpenjdk::set_javathread_state(threadobject *t, int state)
 {
        // Set the state of the java.lang.Thread object.
-       java_lang_Thread thread(thread_get_object(t));
+       java_lang_Thread thread(LLNI_WRAP(t->object));
        assert(thread.is_non_null());
        thread.set_threadStatus(state);
 }
@@ -152,6 +152,11 @@ bool ThreadRuntimeOpenjdk::invoke_thread_initializer(java_lang_Thread& jlt, thre
        return true;
 }
 
+void ThreadRuntimeOpenjdk::clear_heap_reference(java_lang_Thread& jlt)
+{
+       jlt.set_me(0);
+}
+
 #endif /* ENABLE_THREADS && WITH_JAVA_RUNTIME_LIBRARY_OPENJDK */