summaryrefslogtreecommitdiffstats
path: root/osdep
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2014-04-26 22:52:26 +0200
committerwm4 <wm4@nowhere>2014-04-26 22:52:26 +0200
commitcdafc2f7d7537de02e25b8c86b9930b6762c6d91 (patch)
tree06af9a6dfd3d0865ad21e9fbc9739bcf67fa86c6 /osdep
parenteb3cc32f9be3c589a43c43dcd2d5bed73db75c86 (diff)
downloadmpv-cdafc2f7d7537de02e25b8c86b9930b6762c6d91.tar.bz2
mpv-cdafc2f7d7537de02e25b8c86b9930b6762c6d91.tar.xz
terminal: always use SA_RESTART with sigaction()
One problem is that for example stdio functions won't restart syscalls manually, and instead treat EINTR as an error. So passing SA_RESTART is the only sane thing to do, unless you have special requirements, which we don't.
Diffstat (limited to 'osdep')
-rw-r--r--osdep/terminal-unix.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/osdep/terminal-unix.c b/osdep/terminal-unix.c
index 9b1e3d21fe..844054e1bd 100644
--- a/osdep/terminal-unix.c
+++ b/osdep/terminal-unix.c
@@ -532,7 +532,7 @@ static int setsigaction(int signo, void (*handler) (int),
else
sigemptyset(&sa.sa_mask);
- sa.sa_flags = flags;
+ sa.sa_flags = flags | SA_RESTART;
return sigaction(signo, &sa, NULL);
}