Fix memleak primitive array setters

The setters used a jni release mode, which does not free the temporary buffer val. The zero mode has the same behaviour, but frees the buffer.
See https://developer.android.com/training/articles/perf-jni.html (search for JNI_COMMIT)