mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-17 17:44:40 +02:00
8212216: JGSS: Fix leak in exception cases in getJavaOID()
Reviewed-by: mullan, weijun
This commit is contained in:
parent
e6d66056ab
commit
10027304cd
1 changed files with 6 additions and 9 deletions
|
@ -724,17 +724,14 @@ jobject getJavaOID(JNIEnv *env, gss_OID cOid) {
|
||||||
if (jbytes == NULL) {
|
if (jbytes == NULL) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
if (!(*env)->ExceptionCheck(env)) {
|
||||||
(*env)->SetByteArrayRegion(env, jbytes, 0, 2, (jbyte *) oidHdr);
|
(*env)->SetByteArrayRegion(env, jbytes, 0, 2, (jbyte *) oidHdr);
|
||||||
if ((*env)->ExceptionCheck(env)) {
|
|
||||||
return NULL;
|
|
||||||
}
|
}
|
||||||
|
if (!(*env)->ExceptionCheck(env)) {
|
||||||
(*env)->SetByteArrayRegion(env, jbytes, 2, cLen, (jbyte *) cOid->elements);
|
(*env)->SetByteArrayRegion(env, jbytes, 2, cLen, (jbyte *) cOid->elements);
|
||||||
if ((*env)->ExceptionCheck(env)) {
|
|
||||||
return NULL;
|
|
||||||
}
|
}
|
||||||
|
if (!(*env)->ExceptionCheck(env)) {
|
||||||
result = (*env)->NewObject(env, CLS_Oid, MID_Oid_ctor1, jbytes);
|
result = (*env)->NewObject(env, CLS_Oid, MID_Oid_ctor1, jbytes);
|
||||||
if ((*env)->ExceptionCheck(env)) {
|
|
||||||
return NULL;
|
|
||||||
}
|
}
|
||||||
(*env)->DeleteLocalRef(env, jbytes);
|
(*env)->DeleteLocalRef(env, jbytes);
|
||||||
return result;
|
return result;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue