< prev index next >

src/hotspot/share/ci/ciField.cpp

Print this page
rev 59276 : [mq]: v2

*** 170,179 **** --- 170,186 ---- true, false, THREAD); if (!can_access) { _holder = declared_holder; _offset = -1; _is_constant = false; + // It's possible the access check failed due to a nestmate access check + // encountering an exception. We can't propagate the exception from here + // so we have to clear it. If the access check happens again in a different + // context then the exception will be thrown there. + if (HAS_PENDING_EXCEPTION) { + CLEAR_PENDING_EXCEPTION; + } return; } assert(canonical_holder == field_desc.field_holder(), "just checking"); initialize_from(&field_desc);
< prev index next >