From 74434376cf7acbe13d0b2488df30bcb1f8755a5a Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Mon, 21 Jun 2010 17:09:33 +0000 Subject: * dcrt0.cc (__api_fatal): Temporarily generate a stackdump. --- winsup/cygwin/ChangeLog | 4 ++++ winsup/cygwin/dcrt0.cc | 3 +++ 2 files changed, 7 insertions(+) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index c26901e5e..b822077dd 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,7 @@ +2010-06-21 Christopher Faylor + + * dcrt0.cc (__api_fatal): Temporarily generate a stackdump. + 2010-06-21 Christopher Faylor * tls_pbuf.cc (tmp_pathbuf::w_get): Report what's failing when too many diff --git a/winsup/cygwin/dcrt0.cc b/winsup/cygwin/dcrt0.cc index d32ff22c9..5dfad7c10 100644 --- a/winsup/cygwin/dcrt0.cc +++ b/winsup/cygwin/dcrt0.cc @@ -1145,6 +1145,8 @@ _exit (int n) do_exit (((DWORD) n & 0xff) << 8); } +extern "C" void cygwin_stackdump (); + extern "C" void __api_fatal (const char *fmt, ...) { @@ -1160,6 +1162,7 @@ __api_fatal (const char *fmt, ...) #ifdef DEBUGGING try_to_debug (); #endif + cygwin_stackdump (); myself.exit (__api_fatal_exit_val); } -- cgit v1.2.3