Skip to content

Commit a5cad0e

Browse files
author
Justin Lu
committedOct 10, 2024
8341791: Fix ExceptionOccurred in java.prefs
Reviewed-by: bpb, jpai, naoto
1 parent 7eb5535 commit a5cad0e

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed
 

‎src/java.prefs/macosx/native/libprefs/MacOSXPreferencesFile.m

+9-9
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2011, 2024, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* This code is free software; you can redistribute it and/or modify it
@@ -83,7 +83,7 @@ static void throwOutOfMemoryError(JNIEnv *env, const char *msg)
8383
c = exceptionClass;
8484
} else {
8585
c = (*env)->FindClass(env, "java/lang/OutOfMemoryError");
86-
if ((*env)->ExceptionOccurred(env)) return;
86+
if ((*env)->ExceptionCheck(env)) return;
8787
exceptionClass = (*env)->NewGlobalRef(env, c);
8888
}
8989

@@ -211,7 +211,7 @@ static jarray createJavaStringArray(JNIEnv *env, CFIndex count)
211211
c = stringClass;
212212
} else {
213213
c = (*env)->FindClass(env, "java/lang/String");
214-
if ((*env)->ExceptionOccurred(env)) return NULL;
214+
if ((*env)->ExceptionCheck(env)) return NULL;
215215
stringClass = (*env)->NewGlobalRef(env, c);
216216
}
217217

@@ -892,7 +892,7 @@ static void createTreeForPath(CFStringRef path, CFStringRef name,
892892
result = NULL;
893893
} else {
894894
CFStringRef cfString = copyToCFString(env, value);
895-
if ((*env)->ExceptionOccurred(env)) {
895+
if ((*env)->ExceptionCheck(env)) {
896896
// memory error in copyToCFString
897897
result = NULL;
898898
} else if (cfString == NULL) {
@@ -940,10 +940,10 @@ static void BuildJavaArrayFn(const void *key, const void *value, void *context)
940940
CFStringRef cfString = NULL;
941941
JNIEnv *env = args->env;
942942

943-
if ((*env)->ExceptionOccurred(env)) return; // already failed
943+
if ((*env)->ExceptionCheck(env)) return; // already failed
944944

945945
cfString = copyToCFString(env, propkey);
946-
if ((*env)->ExceptionOccurred(env)) {
946+
if ((*env)->ExceptionCheck(env)) {
947947
// memory error in copyToCFString
948948
} else if (!cfString) {
949949
// bogus value type in prefs file - no Java errors available
@@ -960,9 +960,9 @@ static void BuildJavaArrayFn(const void *key, const void *value, void *context)
960960
}
961961
if (CFStringGetLength(cfString) <= 0) goto bad; // ignore empty
962962
javaString = toJavaString(env, cfString);
963-
if ((*env)->ExceptionOccurred(env)) goto bad;
963+
if ((*env)->ExceptionCheck(env)) goto bad;
964964
(*env)->SetObjectArrayElement(env, args->result,args->used,javaString);
965-
if ((*env)->ExceptionOccurred(env)) goto bad;
965+
if ((*env)->ExceptionCheck(env)) goto bad;
966966
args->used++;
967967
}
968968

@@ -1003,7 +1003,7 @@ static jarray getStringsForNode(JNIEnv *env, jobject klass, jobject jpath,
10031003
args.used = 0;
10041004
args.allowSlash = allowSlash;
10051005
CFDictionaryApplyFunction(node, BuildJavaArrayFn, &args);
1006-
if (!(*env)->ExceptionOccurred(env)) {
1006+
if (!(*env)->ExceptionCheck(env)) {
10071007
// array construction succeeded
10081008
if (args.used < count) {
10091009
// finished array is smaller than expected.

0 commit comments

Comments
 (0)
Please sign in to comment.