提交 8ced885b 编写于 作者: M msheppar

8036609: Check jdk/src/windows/native/java/lang/ProcessImpl_md.c for JNI pending exceptions

Summary: added ExceptionCheck fater JNI calls
Reviewed-by: chegar
上级 62233791
...@@ -359,9 +359,11 @@ Java_java_lang_ProcessImpl_create(JNIEnv *env, jclass ignored, ...@@ -359,9 +359,11 @@ Java_java_lang_ProcessImpl_create(JNIEnv *env, jclass ignored,
const jchar *penvBlock = (envBlock != NULL) const jchar *penvBlock = (envBlock != NULL)
? (*env)->GetStringChars(env, envBlock, NULL) ? (*env)->GetStringChars(env, envBlock, NULL)
: NULL; : NULL;
if (!(*env)->ExceptionCheck(env)) {
const jchar *pdir = (dir != NULL) const jchar *pdir = (dir != NULL)
? (*env)->GetStringChars(env, dir, NULL) ? (*env)->GetStringChars(env, dir, NULL)
: NULL; : NULL;
if (!(*env)->ExceptionCheck(env)) {
jlong *handles = (*env)->GetLongArrayElements(env, stdHandles, NULL); jlong *handles = (*env)->GetLongArrayElements(env, stdHandles, NULL);
if (handles != NULL) { if (handles != NULL) {
ret = processCreate( ret = processCreate(
...@@ -375,8 +377,10 @@ Java_java_lang_ProcessImpl_create(JNIEnv *env, jclass ignored, ...@@ -375,8 +377,10 @@ Java_java_lang_ProcessImpl_create(JNIEnv *env, jclass ignored,
} }
if (pdir != NULL) if (pdir != NULL)
(*env)->ReleaseStringChars(env, dir, pdir); (*env)->ReleaseStringChars(env, dir, pdir);
}
if (penvBlock != NULL) if (penvBlock != NULL)
(*env)->ReleaseStringChars(env, envBlock, penvBlock); (*env)->ReleaseStringChars(env, envBlock, penvBlock);
}
(*env)->ReleaseStringChars(env, cmd, pcmd); (*env)->ReleaseStringChars(env, cmd, pcmd);
} }
} }
...@@ -448,7 +452,7 @@ Java_java_lang_ProcessImpl_isProcessAlive(JNIEnv *env, jclass ignored, jlong han ...@@ -448,7 +452,7 @@ Java_java_lang_ProcessImpl_isProcessAlive(JNIEnv *env, jclass ignored, jlong han
JNIEXPORT jboolean JNICALL JNIEXPORT jboolean JNICALL
Java_java_lang_ProcessImpl_closeHandle(JNIEnv *env, jclass ignored, jlong handle) Java_java_lang_ProcessImpl_closeHandle(JNIEnv *env, jclass ignored, jlong handle)
{ {
return CloseHandle((HANDLE) handle); return (jboolean) CloseHandle((HANDLE) handle);
} }
/** /**
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册