* select.cc: Set errno using set_sig_errno() throughout.
* signal.cc (signal): Always set SA_RESTART flag. * syscalls.cc (_read): Revert previous patch.
This commit is contained in:
@@ -56,6 +56,9 @@ signal (int sig, _sig_func_ptr func)
|
||||
prev = myself->getsig (sig).sa_handler;
|
||||
myself->getsig (sig).sa_handler = func;
|
||||
myself->getsig (sig).sa_mask = 0;
|
||||
/* SA_RESTART is set to maintain BSD compatible signal behaviour by default.
|
||||
This is also compatible to the behaviour of signal(2) in Linux. */
|
||||
myself->getsig (sig).sa_flags |= SA_RESTART;
|
||||
set_sigcatchers (prev, func);
|
||||
|
||||
syscall_printf ("%p = signal (%d, %p)", prev, sig, func);
|
||||
|
Reference in New Issue
Block a user