JNIEXPORT void JNICALL Java_com_uber_h3core_NativeMethods_getPentagons()

in src/main/c/h3-java/src/jniapi.c [632:652]


JNIEXPORT void JNICALL Java_com_uber_h3core_NativeMethods_getPentagons(
    JNIEnv *env, jobject thiz, jint res, jlongArray results) {
    jsize size = (**env).GetArrayLength(env, results);
    if (size < pentagonCount()) {
        ThrowOutOfMemoryError(env);
        return;
    }

    jlong *resultsElements = (**env).GetLongArrayElements(env, results, 0);

    if (resultsElements != NULL) {
        H3Error err = getPentagons(res, resultsElements);

        (**env).ReleaseLongArrayElements(env, results, resultsElements, 0);
        if (err) {
            ThrowH3Exception(env, err);
        }
    } else {
        ThrowOutOfMemoryError(env);
    }
}