diff --git a/src/sna/sna_threads.c b/src/sna/sna_threads.c index 4a98753f..f77ddbfe 100644 --- a/src/sna/sna_threads.c +++ b/src/sna/sna_threads.c @@ -29,6 +29,7 @@ #include #include +#include static int max_threads = -1; @@ -44,6 +45,11 @@ static struct thread { static void *__run__(void *arg) { struct thread *t = arg; + sigset_t signals; + + /* Disable all signals in the slave threads as X uses them for IO */ + sigfillset(&signals); + pthread_sigmask(SIG_BLOCK, &signals, NULL); pthread_mutex_lock(&t->mutex); while (1) {