diff --git a/zygiskd/src/companion.c b/zygiskd/src/companion.c index 4e9ca96..3177f0a 100644 --- a/zygiskd/src/companion.c +++ b/zygiskd/src/companion.c @@ -121,11 +121,7 @@ void companion_entry(int fd) { ASSURE_SIZE_WRITE("ZygiskdCompanion", "module_entry", ret, sizeof(uint8_t)); } - struct sigaction sa; - memset(&sa, 0, sizeof(sa)); - - sigemptyset(&sa.sa_mask); - sa.sa_handler = SIG_IGN; + struct sigaction sa = { .sa_handler = SIG_IGN }; sigaction(SIGPIPE, &sa, NULL); while (1) { diff --git a/zygiskd/src/zygiskd.c b/zygiskd/src/zygiskd.c index eb1d2d1..fe00454 100644 --- a/zygiskd/src/zygiskd.c +++ b/zygiskd/src/zygiskd.c @@ -357,6 +357,9 @@ void zygiskd_start(char *restrict argv[]) { return; } + struct sigaction sa = { .sa_handler = SIG_IGN }; + sigaction(SIGPIPE, &sa, NULL); + bool first_process = true; while (1) { int client_fd = accept(socket_fd, NULL, NULL);