summaryrefslogtreecommitdiff
path: root/src/jvm
diff options
context:
space:
mode:
authorJari Vetoniemi <mailroxas@gmail.com>2018-02-19 13:33:53 +0200
committerJari Vetoniemi <mailroxas@gmail.com>2018-02-19 13:33:53 +0200
commit09fc4ea761b6b774a6423bdfd92049be78e32a49 (patch)
tree04c467919f057effb36352d7531693239e46e337 /src/jvm
parent535779b6ff5cd21590e5ed3aff3c9ae4c785e34d (diff)
jvm: implement more java apis
Diffstat (limited to 'src/jvm')
-rw-r--r--src/jvm/jvm.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/jvm/jvm.c b/src/jvm/jvm.c
index 130c017..72529df 100644
--- a/src/jvm/jvm.c
+++ b/src/jvm/jvm.c
@@ -769,9 +769,10 @@ static void
JNIEnv_CallVoidMethodV(JNIEnv* p0, jobject p1, jmethodID p2, va_list p3)
{
assert(p0 && p1 && p2);
- struct jvm *jvm = jnienv_get_jvm(p0);
- struct jvm_method *method = &jvm_get_object(jvm, p2)->method;
- printf("%s::%s\n", jvm_get_object(jvm, method->klass)->klass.name.data, method->name.data);
+ char symbol[255];
+ jvm_form_symbol(jnienv_get_jvm(p0), p2, symbol, sizeof(symbol));
+ void (*fun)(JNIEnv*, jobject, va_list) = create_wrapper(symbol, dlsym(RTLD_DEFAULT, symbol));
+ fun(p0, p1, p3);
}
static void