diff -r 3549217e0897 -r 106d0156648d jdk/src/jdk.crypto.pkcs11/share/native/libj2pkcs11/p11_crypt.c --- a/jdk/src/jdk.crypto.pkcs11/share/native/libj2pkcs11/p11_crypt.c Fri Nov 07 15:12:04 2014 +0000 +++ b/jdk/src/jdk.crypto.pkcs11/share/native/libj2pkcs11/p11_crypt.c Fri Nov 07 13:07:09 2014 -0800 @@ -141,8 +141,8 @@ (CK_BYTE_PTR)(outBufP + jOutOfs), &ckEncryptedPartLen); - (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_ABORT); (*env)->ReleasePrimitiveArrayCritical(env, jIn, inBufP, JNI_ABORT); + (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_COMMIT); ckAssertReturnValueOK(env, rv); return ckEncryptedPartLen; @@ -214,7 +214,7 @@ } if (directOut == 0) { - (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_ABORT); + (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_COMMIT); } ckAssertReturnValueOK(env, rv); @@ -266,7 +266,7 @@ //printf("EF: ckLastEncryptedPartLen=%i", ckLastEncryptedPartLen); if (directOut == 0) { - (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_ABORT); + (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_COMMIT); } ckAssertReturnValueOK(env, rv); @@ -361,8 +361,8 @@ (CK_BYTE_PTR)(outBufP + jOutOfs), &ckPartLen); - (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_ABORT); (*env)->ReleasePrimitiveArrayCritical(env, jIn, inBufP, JNI_ABORT); + (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_COMMIT); ckAssertReturnValueOK(env, rv); @@ -429,7 +429,7 @@ } if (directOut == 0) { - (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_ABORT); + (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_COMMIT); } ckAssertReturnValueOK(env, rv); @@ -478,7 +478,7 @@ &ckLastPartLen); if (directOut == 0) { - (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_ABORT); + (*env)->ReleasePrimitiveArrayCritical(env, jOut, outBufP, JNI_COMMIT); }