# HG changeset patch # User Doug Simon # Date 1458294629 -3600 # Node ID b364269cb6cf5792e8f19b2c0c9a46c1810f2fb4 # Parent f895a46e0a45c68c68d872c8395404486132e261 revert to explicit exception handling due in scope of an EXCEPTION_MARK diff -r f895a46e0a45 -r b364269cb6cf src/share/vm/runtime/thread.cpp --- a/src/share/vm/runtime/thread.cpp Tue Mar 15 13:00:43 2016 +0300 +++ b/src/share/vm/runtime/thread.cpp Fri Mar 18 10:50:29 2016 +0100 @@ -3654,7 +3654,10 @@ // Note that we do not use CHECK_0 here since we are inside an EXCEPTION_MARK and // set_init_completed has just been called, causing exceptions not to be shortcut // anymore. We call vm_exit_during_initialization directly instead. - SystemDictionary::compute_java_system_loader(CHECK_(JNI_ERR)); + SystemDictionary::compute_java_system_loader(THREAD); + if (HAS_PENDING_EXCEPTION) { + vm_exit_during_initialization(Handle(THREAD, PENDING_EXCEPTION)); + } #if INCLUDE_ALL_GCS // Support for ConcurrentMarkSweep. This should be cleaned up