From bb755766d33e6c7fb43c7e6d1ba8cf5843041b72 Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Thu, 8 Feb 2001 04:04:12 +0000 Subject: bugfix 2.5.1.0 --- CNativeCode/jnitools.c | 53 ++++++++++++++++++++++++++++++++++---------------- 1 file changed, 36 insertions(+), 17 deletions(-) (limited to 'CNativeCode/jnitools.c') diff --git a/CNativeCode/jnitools.c b/CNativeCode/jnitools.c index 18a4aa5..948d797 100644 --- a/CNativeCode/jnitools.c +++ b/CNativeCode/jnitools.c @@ -347,9 +347,16 @@ jarray LIBAPIENTRY jnitoolsNativePtrArray2JavaArray (JNIEnv *env, errText, arg); return 0; } - for(i=0; iGetBooleanArrayElements(env, (jbooleanArray)arr, 0); setLenBytes = setLenElems * sizeof(jboolean); for(i=0; iReleaseBooleanArrayElements(env,(jbooleanArray)arr, (jboolean *)arrdata,JNI_ABORT); break; case T_BYTE_ARRAY: arrdata = (unsigned char *) (*env)->GetByteArrayElements(env, (jbyteArray)arr, 0); setLenBytes = setLenElems * sizeof(jbyte); for(i=0; iReleaseByteArrayElements(env,(jbyteArray)arr, (jbyte *)arrdata,JNI_ABORT); break; case T_CHAR_ARRAY: arrdata = (unsigned char *) (*env)->GetCharArrayElements(env, (jcharArray)arr, 0); setLenBytes = setLenElems * sizeof(jchar); for(i=0; iReleaseCharArrayElements(env,(jcharArray)arr, (jchar *)arrdata,JNI_ABORT); break; case T_SHORT_ARRAY: arrdata = (unsigned char *) (*env)->GetShortArrayElements(env, (jshortArray)arr, 0); setLenBytes = setLenElems * sizeof(jshort); for(i=0; iReleaseShortArrayElements(env,(jshortArray)arr, (jshort *)arrdata,JNI_ABORT); break; case T_INT_ARRAY: arrdata = (unsigned char *) (*env)->GetIntArrayElements(env, (jintArray)arr, 0); setLenBytes = setLenElems * sizeof(jint); for(i=0; iReleaseIntArrayElements(env,(jintArray)arr, (jint *)arrdata,JNI_ABORT); break; case T_LONG_ARRAY: arrdata = (unsigned char *) (*env)->GetLongArrayElements(env, (jlongArray)arr, 0); setLenBytes = setLenElems * sizeof(jlong); for(i=0; iReleaseLongArrayElements(env,(jlongArray)arr, (jlong *)arrdata,JNI_ABORT); break; case T_FLOAT_ARRAY: arrdata = (unsigned char *) (*env)->GetFloatArrayElements(env, (jfloatArray)arr, 0); setLenBytes = setLenElems * sizeof(jfloat); for(i=0; iReleaseFloatArrayElements(env,(jfloatArray)arr, (jfloat *)arrdata,JNI_ABORT); break; case T_DOUBLE_ARRAY: arrdata = (unsigned char *) (*env)->GetDoubleArrayElements(env, (jdoubleArray)arr, 0); setLenBytes = setLenElems * sizeof(jdouble); for(i=0; iReleaseDoubleArrayElements(env,(jdoubleArray)arr, (jdouble *)arrdata,JNI_ABORT); break; default: -- cgit v1.2.3