https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=918c3eda4176191733d9732dd7c5b0fc78c5a134
commit 918c3eda4176191733d9732dd7c5b0fc78c5a134 Author: Corinna Vinschen <[email protected]> AuthorDate: Sat Feb 3 19:54:31 2024 +0100 Commit: Corinna Vinschen <[email protected]> CommitDate: Sat Feb 3 20:03:12 2024 +0100 Cygwin: document new winjitdebug option Signed-off-by: Corinna Vinschen <[email protected]> Diff: --- winsup/cygwin/release/3.5.1 | 10 ++++++++-- winsup/doc/cygwinenv.xml | 10 ++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/winsup/cygwin/release/3.5.1 b/winsup/cygwin/release/3.5.1 index 7776d120fbc2..81945dbda58a 100644 --- a/winsup/cygwin/release/3.5.1 +++ b/winsup/cygwin/release/3.5.1 @@ -1,8 +1,14 @@ -Bug Fixes ---------- +Fixes: +------ - Fix exit code for non-cygwin process running in console. The bug was introduced in 3.5.0. - Make the interface names handled by if_nametoindex() and if_indextoname() consistent with that of if_nameindex(). + +- Revert error handling for non-Cygwin child processes to use Cygwin's + error mode by default. Resetting the error mode to the OS default + error mode is now possible by using the new CYGWIN environment variable + option "winjitdebug". + Addresses: https://cygwin.com/pipermail/cygwin/2024-February/255305.html diff --git a/winsup/doc/cygwinenv.xml b/winsup/doc/cygwinenv.xml index 05672c404ef1..3c69d5e4541c 100644 --- a/winsup/doc/cygwinenv.xml +++ b/winsup/doc/cygwinenv.xml @@ -93,6 +93,16 @@ line (truncated to ~32K) will be passed on any processes that it creates in addition to the normal UNIX argv list. Defaults to not set.</para> </listitem> +<listitem> +<para><envar>(no)winjitdebug</envar> - if set, non-Cygwin executables +started from a Cygwin process will have their error mode reset to the +system default. That means, if they don't call SetErrorMode() explicitl, +the OS will display error dialog boxes in the GUI if some fatal error +occurs. Defaults to not set, so fatal errors in a non-Cygwin child +process will just result in an error code be propagated back to the +parent process.</para> +</listitem> + <listitem> <para><envar>winsymlinks:{lnk,native,nativestrict,sys}</envar></para>
