diff options
| author | kr.angelov <kr.angelov@gmail.com> | 2013-11-21 14:29:47 +0000 |
|---|---|---|
| committer | kr.angelov <kr.angelov@gmail.com> | 2013-11-21 14:29:47 +0000 |
| commit | a50724ca2cd53784b7a1ac693002309250d85da3 (patch) | |
| tree | 5170e0a71eb532a299203e195be66c6d367a47d8 /src/runtime/java | |
| parent | 57a48fea59634944ca7a8544dffc3472ca373326 (diff) | |
the Java binding for lookupMorpho should release the local references created in a loop
Diffstat (limited to 'src/runtime/java')
| -rw-r--r-- | src/runtime/java/jpgf.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/runtime/java/jpgf.c b/src/runtime/java/jpgf.c index dd29eaf7f..f8c340cf9 100644 --- a/src/runtime/java/jpgf.c +++ b/src/runtime/java/jpgf.c @@ -437,14 +437,18 @@ jpgf_collect_morpho(PgfMorphoCallback* self, JMorphoCallback* callback = (JMorphoCallback*) self; JNIEnv* env = callback->env; + jstring jlemma = gu2j_string(env,lemma); + jstring janalysis = gu2j_string(env,analysis); jobject jan = (*env)->NewObject(env, callback->an_class, callback->an_constrId, - gu2j_string(env,lemma), - gu2j_string(env,analysis), + jlemma, + janalysis, (double) prob); (*env)->CallBooleanMethod(env, callback->analyses, callback->addId, jan); (*env)->DeleteLocalRef(env, jan); + (*env)->DeleteLocalRef(env, janalysis); + (*env)->DeleteLocalRef(env, jlemma); } JNIEXPORT jobject JNICALL |
