From 5cde30dae7c034cb2f2fba0a367f16018e48de1e Mon Sep 17 00:00:00 2001 From: Simon Morlat Date: Tue, 2 May 2017 15:13:17 +0200 Subject: [PATCH] fix crash with ErrorInfoImpl due to missing symbols --- coreapi/linphonecore_jni.cc | 18 ++++++++++++++++++ java/impl/org/linphone/core/ErrorInfoImpl.java | 7 ++++++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 1f5c3a7d9..241e8fd79 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -7445,6 +7445,24 @@ JNIEXPORT jstring JNICALL Java_org_linphone_core_ErrorInfoImpl_getDetails(JNIEnv return tmp ? env->NewStringUTF(tmp) : NULL; } +/* + * Class: org_linphone_core_ErrorInfoImpl + * Method: ref + * Signature: (J); + */ +JNIEXPORT void JNICALL Java_org_linphone_core_ErrorInfoImpl_ref(JNIEnv *env, jobject jobj, jlong ei){ + linphone_error_info_ref((LinphoneErrorInfo*)ei); +} + +/* + * Class: org_linphone_core_ErrorInfoImpl + * Method: unref + * Signature: (J); + */ +JNIEXPORT void JNICALL Java_org_linphone_core_ErrorInfoImpl_unref(JNIEnv *env, jobject jobj, jlong ei){ + linphone_error_info_unref((LinphoneErrorInfo*)ei); +} + #ifdef __cplusplus } #endif diff --git a/java/impl/org/linphone/core/ErrorInfoImpl.java b/java/impl/org/linphone/core/ErrorInfoImpl.java index f49bfdcfb..5552f8148 100644 --- a/java/impl/org/linphone/core/ErrorInfoImpl.java +++ b/java/impl/org/linphone/core/ErrorInfoImpl.java @@ -98,5 +98,10 @@ public class ErrorInfoImpl implements ErrorInfo { return getWarnings(); } - + protected void finalize() throws Throwable { + if (mNativePtr != 0){ + unref(mNativePtr); + mNativePtr = 0; + } + } }