From c529909f45fe73394d2846f6b886218449a4b2a0 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Tue, 20 Sep 2005 02:06:57 +0000 Subject: * dcrt0.cc (do_exit): Only call sigproc_terminate from one location -- pinfo::exit. * pinfo.cc (pinfo::exit): Move sigproc_terminate later so that signals can be processed while waiting for hExeced child. (pinfo::maybe_set_exit_code_from_windows): Set exit code from sigExeced if it is non-zero. Set exit_state to ES_EXEC_EXIT prior to waiting for captive process exit code. * exceptions.cc (sigExeced): New global variable. (signal_exit): Remove noreturn attribute from declaration. (signal_exit): Just terminate captive process and return if hExeced on the theory that the exit will be subsequently handled in the main thread. * sigproc.cc (sigproc_terminate): Eliminate test for ES_SIGPROCTERMINATE and use ES_FINAL instead. (sig_send): Use no_signals_available instead of duplicate test. * winsup.h (ES_EXEC_EXIT): New enum. (ES_SIGPROCTERMINATE): Delete. --- winsup/cygwin/winsup.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'winsup/cygwin/winsup.h') diff --git a/winsup/cygwin/winsup.h b/winsup/cygwin/winsup.h index 960c6c4fa..d31dd9abd 100644 --- a/winsup/cygwin/winsup.h +++ b/winsup/cygwin/winsup.h @@ -195,7 +195,7 @@ enum exit_states ES_CLOSEALL, ES_HUP_PGRP, ES_HUP_SID, - ES_SIGPROCTERMINATE, + ES_EXEC_EXIT, ES_TITLE, ES_TTY_TERMINATE, ES_FINAL -- cgit v1.2.3