summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/exceptions.cc
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/exceptions.cc')
-rw-r--r--winsup/cygwin/exceptions.cc5
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 */