< prev index next >
src/hotspot/share/interpreter/linkResolver.cpp
Print this page
*** 570,579 ****
--- 570,583 ----
if (!Reflection::verify_field_access(ref_klass,
resolved_klass,
sel_klass,
flags,
true)) {
+ // Propagate any existing exceptions that may have been thrown
+ if (HAS_PENDING_EXCEPTION) {
+ return;
+ }
ResourceMark rm(THREAD);
Exceptions::fthrow(
THREAD_AND_LOCATION,
vmSymbols::java_lang_IllegalAccessError(),
"tried to access method %s.%s%s from class %s",
*** 917,926 ****
--- 921,935 ----
if (!Reflection::verify_field_access(ref_klass,
resolved_klass,
sel_klass,
fd.access_flags(),
true)) {
+ // Propagate any existing exceptions that may have been thrown
+ if (HAS_PENDING_EXCEPTION) {
+ return;
+ }
+
ResourceMark rm(THREAD);
Exceptions::fthrow(
THREAD_AND_LOCATION,
vmSymbols::java_lang_IllegalAccessError(),
"tried to access field %s.%s from class %s",
< prev index next >