summaryrefslogtreecommitdiffstats
path: root/input
diff options
context:
space:
mode:
Diffstat (limited to 'input')
-rw-r--r--input/ipc-unix.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/input/ipc-unix.c b/input/ipc-unix.c
index 0f4b7132e4..f5c8886a28 100644
--- a/input/ipc-unix.c
+++ b/input/ipc-unix.c
@@ -20,6 +20,7 @@
#include <unistd.h>
#include <poll.h>
+#include <signal.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/stat.h>
@@ -97,6 +98,11 @@ static void *client_thread(void *p)
{
pthread_detach(pthread_self());
+ // We don't use MSG_NOSIGNAL because the moldy fruit OS doesn't support it.
+ struct sigaction sa = { .sa_handler = SIG_IGN, .sa_flags = SA_RESTART };
+ sigfillset(&sa.sa_mask);
+ sigaction(SIGPIPE, &sa, NULL);
+
int rc;
struct client_arg *arg = p;