nitlanguage
/
nit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
tests: update some tests to pass on Mac
[nit.git]
/
lib
/
java.nit
diff --git
a/lib/java.nit
b/lib/java.nit
index
4ea319c
..
de82015
100644
(file)
--- a/
lib/java.nit
+++ b/
lib/java.nit
@@
-49,7
+49,6
@@
redef class Sys
fun jvm=(jvm: JavaVM) do jvm_cache = jvm
# Current main `JniEnv`
fun jvm=(jvm: JavaVM) do jvm_cache = jvm
# Current main `JniEnv`
- # FIXME support threaded Java
fun jni_env: JniEnv
do
if jni_env_cache == null then create_default_jvm
fun jni_env: JniEnv
do
if jni_env_cache == null then create_default_jvm
@@
-157,4
+156,11
@@
redef extern class JavaObject
JNIEnv *env = Sys_jni_env(sys);
(*env)->DeleteGlobalRef(env, recv);
`}
JNIEnv *env = Sys_jni_env(sys);
(*env)->DeleteGlobalRef(env, recv);
`}
+
+ # Delete this local reference
+ fun delete_local_ref import sys, Sys.jni_env `{
+ Sys sys = JavaObject_sys(recv);
+ JNIEnv *env = Sys_jni_env(sys);
+ (*env)->DeleteLocalRef(env, recv);
+ `}
end
end