From 57595dc66d10a81e889adb16e01b5e59f03d70e4 Mon Sep 17 00:00:00 2001 From: 10gic <2391796+10gic@users.noreply.github.com> Date: Tue, 5 Nov 2024 20:03:17 +0800 Subject: [PATCH] Fix memory lead found in public key in kmp binding --- jni/cpp/TWJNIData.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/jni/cpp/TWJNIData.cpp b/jni/cpp/TWJNIData.cpp index 942505f593f..0859a37671e 100644 --- a/jni/cpp/TWJNIData.cpp +++ b/jni/cpp/TWJNIData.cpp @@ -18,5 +18,7 @@ jbyteArray TWDataJByteArray(TWData *_Nonnull data, JNIEnv *env) { TWData *_Nonnull TWDataCreateWithJByteArray(JNIEnv *env, jbyteArray _Nonnull array) { jsize size = env->GetArrayLength(array); jbyte *bytes = env->GetByteArrayElements(array, nullptr); - return TWDataCreateWithBytes((uint8_t *) bytes, size); + const auto *twdata = TWDataCreateWithBytes((uint8_t *) bytes, size); + env->ReleaseByteArrayElements(array, bytes, JNI_ABORT); + return twdata; }