in src/main/c/h3-java/src/jniapi.c [874:898]
JNIEXPORT void JNICALL Java_com_uber_h3core_NativeMethods_compactCells(
JNIEnv *env, jobject thiz, jlongArray h3, jlongArray results) {
jlong *h3Elements = (**env).GetLongArrayElements(env, h3, 0);
if (h3Elements != NULL) {
jlong *resultsElements = (**env).GetLongArrayElements(env, results, 0);
if (resultsElements != NULL) {
jsize numHexes = (**env).GetArrayLength(env, h3);
H3Error err = compactCells(h3Elements, resultsElements, numHexes);
(**env).ReleaseLongArrayElements(env, h3, h3Elements, 0);
(**env).ReleaseLongArrayElements(env, results, resultsElements, 0);
if (err) {
ThrowH3Exception(env, err);
}
} else {
(**env).ReleaseLongArrayElements(env, h3, h3Elements, 0);
ThrowOutOfMemoryError(env);
}
} else {
ThrowOutOfMemoryError(env);
}
}