XXX dont dump core on sigabort

This commit is contained in:
Alexander Graf
2011-11-21 23:50:36 +01:00
committed by Bruce Rogers
parent 0be5309f8d
commit f4cf842ef8

View File

@@ -443,6 +443,10 @@ static void QEMU_NORETURN force_sig(int target_sig)
trace_user_force_sig(env, target_sig, host_sig); trace_user_force_sig(env, target_sig, host_sig);
gdb_signalled(env, target_sig); gdb_signalled(env, target_sig);
if (target_sig == 6) {
goto no_core;
}
/* dump core if supported by target binary format */ /* dump core if supported by target binary format */
if (core_dump_signal(target_sig) && (ts->bprm->core_dump != NULL)) { if (core_dump_signal(target_sig) && (ts->bprm->core_dump != NULL)) {
stop_all_tasks(); stop_all_tasks();
@@ -460,6 +464,8 @@ static void QEMU_NORETURN force_sig(int target_sig)
target_sig, strsignal(host_sig), "core dumped" ); target_sig, strsignal(host_sig), "core dumped" );
} }
no_core:
/* The proper exit code for dying from an uncaught signal is /* The proper exit code for dying from an uncaught signal is
* -<signal>. The kernel doesn't allow exit() or _exit() to pass * -<signal>. The kernel doesn't allow exit() or _exit() to pass
* a negative value. To get the proper exit code we need to * a negative value. To get the proper exit code we need to