Index: build/make/targets/cunit.test.xml
===================================================================
--- build/make/targets/cunit.test.xml (revision 579560)
+++ build/make/targets/cunit.test.xml (working copy)
@@ -172,6 +172,7 @@
+
Index: vm/tests/unit/thread/utils/thread_util_platform_dependent.c
===================================================================
--- vm/tests/unit/thread/utils/thread_util_platform_dependent.c (revision 0)
+++ vm/tests/unit/thread/utils/thread_util_platform_dependent.c (revision 0)
@@ -0,0 +1,33 @@
+#include
+#include "thread_unit_test_utils.h"
+
+#ifdef _WIN32
+#include
+
+create_java_vm_func test_get_java_vm_ptr(void)
+{
+ HANDLE lib;
+ FARPROC func;
+
+ lib = LoadLibrary("harmonyvm.dll");
+ assert(lib);
+ func = GetProcAddress(lib, "JNI_CreateJavaVM");
+ assert(func);
+
+ return (create_java_vm_func)func;
+}
+#else
+#include
+
+create_java_vm_func test_get_java_vm_ptr(void)
+{
+ void *lib, *func;
+
+ lib = dlopen("libharmonyvm.so", RTLD_NOW);
+ assert(lib);
+ func = dlsym(lib, "JNI_CreateJavaVM");
+ assert(func);
+
+ return (create_java_vm_func)func;
+}
+#endif
Property changes on: vm/tests/unit/thread/utils/thread_util_platform_dependent.c
___________________________________________________________________
Name: svn:eol-style
+ native
Index: vm/tests/unit/thread/utils/thread_unit_test_utils.c
===================================================================
--- vm/tests/unit/thread/utils/thread_unit_test_utils.c (revision 579560)
+++ vm/tests/unit/thread/utils/thread_unit_test_utils.c (working copy)
@@ -81,10 +81,14 @@
}
void test_java_thread_setup(int argc, char *argv[]) {
+ create_java_vm_func CreateJavaVM;
JavaVMInitArgs args;
JNIEnv * jni_env;
int i;
+ CreateJavaVM = test_get_java_vm_ptr();
+ assert(CreateJavaVM);
+
args.version = JNI_VERSION_1_2;
args.nOptions = argc;
args.options = (JavaVMOption *) malloc(args.nOptions * sizeof(JavaVMOption));
@@ -97,7 +101,7 @@
log_debug("test_java_thread_init()");
hythread_sleep(1000);
- JNI_CreateJavaVM(&GLOBAL_VM, &jni_env, &args);
+ CreateJavaVM(&GLOBAL_VM, &jni_env, &args);
}
void test_java_thread_teardown(void) {
Index: vm/tests/unit/thread/utils/thread_unit_test_utils.h
===================================================================
--- vm/tests/unit/thread/utils/thread_unit_test_utils.h (revision 579560)
+++ vm/tests/unit/thread/utils/thread_unit_test_utils.h (working copy)
@@ -123,3 +123,7 @@
jobject new_jobject_thread_death(JNIEnv * jni_env);
jthread new_jobject();
void delete_jobject(jobject obj);
+
+typedef jint (JNICALL *create_java_vm_func)(JavaVM **vm, JNIEnv **env,
+ JavaVMInitArgs *args);
+create_java_vm_func test_get_java_vm_ptr(void);