diff options
author | Christopher Faylor <me@cgf.cx> | 2013-07-20 17:11:44 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2013-07-20 17:11:44 +0000 |
commit | d31805a14c8e555842c3a654f9eb0e12694635b1 (patch) | |
tree | 1f3aff5aa2a1b86454009cb784bb6a20106b0186 | |
parent | 5ce53ae0eaca40f7039b5b3b20d689215fdf4706 (diff) | |
download | cygnal-d31805a14c8e555842c3a654f9eb0e12694635b1.tar.gz cygnal-d31805a14c8e555842c3a654f9eb0e12694635b1.tar.bz2 cygnal-d31805a14c8e555842c3a654f9eb0e12694635b1.zip |
* exceptions.cc (signal_exit): Remove comment. Use __builtin_frame_address.
-rw-r--r-- | winsup/cygwin/ChangeLog | 5 | ||||
-rw-r--r-- | winsup/cygwin/exceptions.cc | 6 |
2 files changed, 7 insertions, 4 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index c7bfe8d37..6a7d285c3 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,10 @@ 2013-07-20 Christopher Faylor <me.cygwin2013@cgf.cx> + * exceptions.cc (signal_exit): Remove comment. Use + __builtin_frame_address. + +2013-07-20 Christopher Faylor <me.cygwin2013@cgf.cx> + * exceptions.cc (signal_exit): Nope. Nevermind. Dump core unconditionally. diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc index a9fb87992..40ff8f0ce 100644 --- a/winsup/cygwin/exceptions.cc +++ b/winsup/cygwin/exceptions.cc @@ -1218,8 +1218,6 @@ signal_exit (int sig, siginfo_t *si) sig |= 0x80; /* Flag that we've "dumped core" */ if (try_to_debug ()) break; - /* FIXME: We're still dumping core even if !(sig & 0x80). Need to - investigate if this should be shortcircuited in that case. */ if (si->si_code != SI_USER && si->si_cyg) ((cygwin_exception *) si->si_cyg)->dumpstack (); else @@ -1228,10 +1226,10 @@ signal_exit (int sig, siginfo_t *si) c.ContextFlags = CONTEXT_FULL; #ifdef __x86_64__ RtlCaptureContext (&c); - cygwin_exception exc ((PUINT_PTR) _my_tls.thread_context.rbp, &c); + cygwin_exception exc ((PUINT_PTR) __builtin_frame_address (0), &c); #else GetThreadContext (GetCurrentThread (), &c); - cygwin_exception exc ((PUINT_PTR) _my_tls.thread_context.ebp, &c); + cygwin_exception exc ((PUINT_PTR) __builtin_frame_address (0), &c); #endif exc.dumpstack (); } |