From 1c61cc07023fce0012940d26057d2599114f7a23 Mon Sep 17 00:00:00 2001 From: Elias Naur Date: Thu, 17 Dec 2020 10:04:23 +0100 Subject: [PATCH] jni: tolerate nil byte arrays in GetByteArrayElements Signed-off-by: Elias Naur --- jni/jni.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/jni/jni.go b/jni/jni.go index ec8324f..73ccc42 100644 --- a/jni/jni.go +++ b/jni/jni.go @@ -154,6 +154,9 @@ func CallIntMethod(e Env, obj Object, method MethodID, args ...Value) (int32, er // GetByteArrayElements returns the contents of the array. func GetByteArrayElements(e Env, jarr ByteArray) []byte { + if jarr == 0 { + return nil + } size := C._jni_GetArrayLength(e.env, C.jarray(jarr)) elems := C._jni_GetByteArrayElements(e.env, C.jbyteArray(jarr)) defer C._jni_ReleaseByteArrayElements(e.env, C.jbyteArray(jarr), elems, 0)