diff options
author | Christopher Faylor <me@cgf.cx> | 2006-02-20 02:04:31 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2006-02-20 02:04:31 +0000 |
commit | a339c989c7bb65677c1544d613e65699030f9466 (patch) | |
tree | d201b1d003f49b9175ab8d77a40346893f6c53e6 /winsup/cygwin/exceptions.cc | |
parent | 6d618665782201a6b7f05d0e7d9ad1df7346c463 (diff) | |
download | cygnal-a339c989c7bb65677c1544d613e65699030f9466.tar.gz cygnal-a339c989c7bb65677c1544d613e65699030f9466.tar.bz2 cygnal-a339c989c7bb65677c1544d613e65699030f9466.zip |
* exceptions.cc (stackdump): Avoid dumping more than once.
Diffstat (limited to 'winsup/cygwin/exceptions.cc')
-rw-r--r-- | winsup/cygwin/exceptions.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc index 3f2c13c88..cce217e87 100644 --- a/winsup/cygwin/exceptions.cc +++ b/winsup/cygwin/exceptions.cc @@ -262,13 +262,16 @@ static void stackdump (DWORD ebp, int open_file, bool isexception) { extern unsigned long rlim_core; + static bool already_dumped; - if (rlim_core == 0UL) + if (rlim_core == 0UL || (open_file && already_dumped)) return; if (open_file) open_stackdumpfile (); + already_dumped = true; + int i; thestack.init (ebp, 1, !isexception); /* Initialize from the input CONTEXT */ |