From: Ian Lance Taylor Date: Mon, 14 Oct 2013 21:02:52 +0000 (+0000) Subject: runtime: Don't clobber saved context when catching signal. X-Git-Tag: releases/gcc-4.9.0~3483 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8088e1beb276a0ba33ba2bf499899450d86e9f03;p=thirdparty%2Fgcc.git runtime: Don't clobber saved context when catching signal. From-SVN: r203577 --- diff --git a/libgo/runtime/go-signal.c b/libgo/runtime/go-signal.c index 9771b71cfcf6..af99ddefeb1f 100644 --- a/libgo/runtime/go-signal.c +++ b/libgo/runtime/go-signal.c @@ -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 } }