From: Roland McGrath Date: Thu, 5 Jul 2007 19:08:42 +0000 (+0000) Subject: 2007-07-05 Roland McGrath X-Git-Tag: v4.5.18~212 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fece322e8badc9b47b4286c1d1d4cc7121e7b7e9;p=strace 2007-07-05 Roland McGrath * configure.ac: Check for struct sigcontext.sc_hi2. * signal.c (sys_sigreturn) [MIPS]: Use sc_hi2 vs sc_sigset if found. --- diff --git a/configure.ac b/configure.ac index 49a9b209..5832fb70 100644 --- a/configure.ac +++ b/configure.ac @@ -218,6 +218,10 @@ AC_CHECK_TYPES([struct user_desc],,, [#include ]) AC_CHECK_MEMBERS([struct dqblk.dqb_curblocks],,, [#include ]) +AC_CHECK_MEMBERS([struct sigcontext.sc_hi2],,, [#include +#include ]) + + AC_CHECK_DECLS([sys_errlist]) AC_CHECK_DECLS([sys_siglist, _sys_siglist],,, [#include ]) diff --git a/signal.c b/signal.c index d23727dd..5950831d 100644 --- a/signal.c +++ b/signal.c @@ -1435,7 +1435,11 @@ struct tcb *tcp; if (umove(tcp, sp, &sc) < 0) return 0; tcp->u_arg[0] = 1; +# ifdef HAVE_STRUCT_SIGCONTEXT_SC_HI2 + tcp->u_arg[1] = sc.sc_hi2; +# else tcp->u_arg[1] = sc.sc_sigset; +# endif } else { tcp->u_rval = tcp->u_error = 0; if(tcp->u_arg[0] == 0)