runtime: Don't clobber saved context when catching signal.

From-SVN: r203577
This commit is contained in:
Ian Lance Taylor 2013-10-14 21:02:52 +00:00
parent f637ebc1e8
commit 8088e1beb2
1 changed files with 3 additions and 2 deletions

View File

@ -399,6 +399,7 @@ sig_tramp_info (int sig, Siginfo *info, void *context)
{
G *gp;
M *mp;
void *stack_context[10];
/* We are now running on the stack registered via sigaltstack.
(Actually there is a small span of time between runtime_siginit
@ -409,7 +410,7 @@ sig_tramp_info (int sig, Siginfo *info, void *context)
if (gp != NULL)
{
#ifdef USING_SPLIT_STACK
__splitstack_getcontext (&gp->stack_context[0]);
__splitstack_getcontext (&stack_context[0]);
#endif
}
@ -432,7 +433,7 @@ sig_tramp_info (int sig, Siginfo *info, void *context)
if (gp != NULL)
{
#ifdef USING_SPLIT_STACK
__splitstack_setcontext (&gp->stack_context[0]);
__splitstack_setcontext (&stack_context[0]);
#endif
}
}