mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-23 19:42:50 -06:00
the Java binding for lookupMorpho should release the local references created in a loop
This commit is contained in:
@@ -437,14 +437,18 @@ jpgf_collect_morpho(PgfMorphoCallback* self,
|
|||||||
JMorphoCallback* callback = (JMorphoCallback*) self;
|
JMorphoCallback* callback = (JMorphoCallback*) self;
|
||||||
JNIEnv* env = callback->env;
|
JNIEnv* env = callback->env;
|
||||||
|
|
||||||
|
jstring jlemma = gu2j_string(env,lemma);
|
||||||
|
jstring janalysis = gu2j_string(env,analysis);
|
||||||
jobject jan = (*env)->NewObject(env,
|
jobject jan = (*env)->NewObject(env,
|
||||||
callback->an_class,
|
callback->an_class,
|
||||||
callback->an_constrId,
|
callback->an_constrId,
|
||||||
gu2j_string(env,lemma),
|
jlemma,
|
||||||
gu2j_string(env,analysis),
|
janalysis,
|
||||||
(double) prob);
|
(double) prob);
|
||||||
(*env)->CallBooleanMethod(env, callback->analyses, callback->addId, jan);
|
(*env)->CallBooleanMethod(env, callback->analyses, callback->addId, jan);
|
||||||
(*env)->DeleteLocalRef(env, jan);
|
(*env)->DeleteLocalRef(env, jan);
|
||||||
|
(*env)->DeleteLocalRef(env, janalysis);
|
||||||
|
(*env)->DeleteLocalRef(env, jlemma);
|
||||||
}
|
}
|
||||||
|
|
||||||
JNIEXPORT jobject JNICALL
|
JNIEXPORT jobject JNICALL
|
||||||
|
|||||||
Reference in New Issue
Block a user