src/share/vm/utilities/vmError.cpp

Print this page

        

*** 503,517 **** --- 503,521 ---- st->cr(); st->print_cr("#"); } STEP(63, "(printing core file information)") st->print("# "); + if (CreateCoredumpOnCrash) { if (coredump_status) { st->print("Core dump written. Default location: %s", coredump_message); } else { st->print("Failed to write core dump. %s", coredump_message); } + } else { + st->print("CreateCoredumpOnCrash turned off, no core file dumped"); + } st->cr(); st->print_cr("#"); STEP(65, "(printing bug submit message)")
*** 896,906 **** static bool out_done = false; // done printing to standard out static bool log_done = false; // done saving error log static bool transmit_report_done = false; // done error reporting if (SuppressFatalErrorMessage) { ! os::abort(); } jlong mytid = os::current_thread_id(); if (first_error == NULL && Atomic::cmpxchg_ptr(this, &first_error, NULL) == NULL) { --- 900,910 ---- static bool out_done = false; // done printing to standard out static bool log_done = false; // done saving error log static bool transmit_report_done = false; // done error reporting if (SuppressFatalErrorMessage) { ! os::abort(CreateCoredumpOnCrash); } jlong mytid = os::current_thread_id(); if (first_error == NULL && Atomic::cmpxchg_ptr(this, &first_error, NULL) == NULL) {
*** 914,925 **** // User has asked JVM to abort. Reset ShowMessageBoxOnError so the // WatcherThread can kill JVM if the error handler hangs. ShowMessageBoxOnError = false; } ! // Write a minidump on Windows, check core dump limits on Linux/Solaris ! os::check_or_create_dump(_siginfo, _context, buffer, sizeof(buffer)); // reset signal handlers or exception filter; make sure recursive crashes // are handled properly. reset_signal_handlers(); --- 918,929 ---- // User has asked JVM to abort. Reset ShowMessageBoxOnError so the // WatcherThread can kill JVM if the error handler hangs. ShowMessageBoxOnError = false; } ! // check core dump limits on Linux/Solaris, nothing on Windows ! os::check_create_dump_limit(_siginfo, _context, buffer, sizeof(buffer)); // reset signal handlers or exception filter; make sure recursive crashes // are handled properly. reset_signal_handlers();
*** 1086,1096 **** // os::abort() will call abort hooks, try it first. static bool skip_os_abort = false; if (!skip_os_abort) { skip_os_abort = true; bool dump_core = should_report_bug(first_error->_id); ! os::abort(dump_core); } // if os::abort() doesn't abort, try os::die(); os::die(); } --- 1090,1100 ---- // os::abort() will call abort hooks, try it first. static bool skip_os_abort = false; if (!skip_os_abort) { skip_os_abort = true; bool dump_core = should_report_bug(first_error->_id); ! os::abort(dump_core && CreateCoredumpOnCrash, _siginfo, _context); } // if os::abort() doesn't abort, try os::die(); os::die(); }