[newlib-cygwin/main] Cygwin: document new winjitdebug option

Corinna Vinschen corinna@sourceware.org
Sat Feb 3 19:19:49 GMT 2024


commit 918c3eda4176191733d9732dd7c5b0fc78c5a134
Author:     Corinna Vinschen <corinna@vinschen.de>
AuthorDate: Sat Feb 3 19:54:31 2024 +0100
Commit:     Corinna Vinschen <corinna@vinschen.de>
CommitDate: Sat Feb 3 20:03:12 2024 +0100

    Cygwin: document new winjitdebug option
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

 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
 - 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>
+<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>

More information about the Cygwin-cvs mailing list