src/main/c/h3-java/src/jniapi.c [245:265]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    if (err) {
        ThrowH3Exception(env, err);
        return -1;
    }

    jsize sz = (**env).GetArrayLength(env, verts);
    jdouble *vertsElements = (**env).GetDoubleArrayElements(env, verts, 0);

    if (vertsElements != NULL) {
        // if sz is too small, we will fail to write all the elements
        for (jsize i = 0; i < sz && i < boundary.numVerts * 2; i += 2) {
            vertsElements[i] = boundary.verts[i / 2].lat;
            vertsElements[i + 1] = boundary.verts[i / 2].lng;
        }

        (**env).ReleaseDoubleArrayElements(env, verts, vertsElements, 0);

        return boundary.numVerts;
    } else {
        ThrowOutOfMemoryError(env);
        return -1;
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



src/main/c/h3-java/src/jniapi.c [1217:1237]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    if (err) {
        ThrowH3Exception(env, err);
        return -1;
    }

    jsize sz = (**env).GetArrayLength(env, verts);
    jdouble *vertsElements = (**env).GetDoubleArrayElements(env, verts, 0);

    if (vertsElements != NULL) {
        // if sz is too small, we will fail to write all the elements
        for (jsize i = 0; i < sz && i < boundary.numVerts * 2; i += 2) {
            vertsElements[i] = boundary.verts[i / 2].lat;
            vertsElements[i + 1] = boundary.verts[i / 2].lng;
        }

        (**env).ReleaseDoubleArrayElements(env, verts, vertsElements, 0);

        return boundary.numVerts;
    } else {
        ThrowOutOfMemoryError(env);
        return -1;
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



