From a573636c6b89a04e7cb82198589141feb4410ca0 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 15 Feb 2018 13:12:23 +0100 Subject: [PATCH] Fixed issue with removeListener in Java wrapper --- wrappers/java/jni.mustache | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/wrappers/java/jni.mustache b/wrappers/java/jni.mustache index c712d5fa7..7c5220708 100644 --- a/wrappers/java/jni.mustache +++ b/wrappers/java/jni.mustache @@ -386,8 +386,10 @@ void Java_{{jniPackage}}{{className}}Impl_removeListener(JNIEnv* env, jobject th bctbx_list_t *it; for (it = (bctbx_list_t *)cbs_list; it != NULL; it = it->next) { {{classCName}}Cbs *cbs = ({{classCName}}Cbs *)it->data; - if ({{cPrefix}}_cbs_get_user_data(cbs) == jlistener) { + jobject listener = (jobject) {{cPrefix}}_cbs_get_user_data(cbs); + if (env->IsSameObject(listener, jlistener)) { {{cPrefix}}_remove_callbacks(cptr, cbs); + env->DeleteGlobalRef(listener); break; } }