提交 6682ed1e 编写于 作者: R Rich Felker

fixed crash in new rsyscall (failure to set sa_flags for signal handler)

上级 c2cd25bf
...@@ -61,12 +61,14 @@ int __rsyscall(int nr, long a, long b, long c, long d, long e, long f) ...@@ -61,12 +61,14 @@ int __rsyscall(int nr, long a, long b, long c, long d, long e, long f)
if (!rs.init) { if (!rs.init) {
struct sigaction sa = { struct sigaction sa = {
.sa_flags = SA_SIGINFO | SA_RESTART,
.sa_sigaction = rsyscall_handler, .sa_sigaction = rsyscall_handler,
.sa_mask = set .sa_mask = set
}; };
sigfillset(&sa.sa_mask); sigfillset(&sa.sa_mask);
sa.sa_sigaction = rsyscall_handler; sa.sa_sigaction = rsyscall_handler;
__libc_sigaction(SIGSYSCALL, &sa, 0); __libc_sigaction(SIGSYSCALL, &sa, 0);
rs.init = 1;
} }
rs.nr = nr; rs.nr = nr;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册