Add explicit NULL check to latinime_Keyboard_setProximityInfo() and ProximityInfo::ProximityInfo().
Bug: 5375319
Change-Id: If3016ab56b6c62c8855b394f23e09e127a279be7
diff --git a/native/jni/jni_common.h b/native/jni/jni_common.h
index c502fa3..dbf6d3e 100644
--- a/native/jni/jni_common.h
+++ b/native/jni/jni_common.h
@@ -18,13 +18,29 @@
#ifndef LATINIME_JNI_COMMON_H
#define LATINIME_JNI_COMMON_H
+#include <stdlib.h>
+
#include "jni.h"
namespace latinime {
-int registerNativeMethods(JNIEnv* env, const char* className, JNINativeMethod* methods,
+int registerNativeMethods(JNIEnv *env, const char *className, JNINativeMethod *methods,
int numMethods);
+inline jint *safeGetIntArrayElements(JNIEnv *env, jintArray jArray) {
+ if (jArray) {
+ return env->GetIntArrayElements(jArray, NULL);
+ } else {
+ return NULL;
+ }
+}
+
+inline void safeReleaseIntArrayElements(JNIEnv *env, jintArray jArray, jint *cArray) {
+ if (jArray) {
+ env->ReleaseIntArrayElements(jArray, cArray, 0);
+ }
+}
+
} // namespace latinime
#endif // LATINIME_JNI_COMMON_H