Fix waitpid() being interrupted by SIGCHLD

Signed-off-by: AnErrupTion <anerruption@disroot.org>
This commit is contained in:
AnErrupTion
2026-04-29 22:52:58 +02:00
parent 59c07aa3ba
commit 51c5c3ee0b

View File

@@ -1541,7 +1541,7 @@ fn authenticate(ptr: *anyopaque) !bool {
const tty_control_transfer_act = std.posix.Sigaction{ const tty_control_transfer_act = std.posix.Sigaction{
.handler = .{ .handler = &ttyControlTransferSignalHandler }, .handler = .{ .handler = &ttyControlTransferSignalHandler },
.mask = std.posix.sigemptyset(), .mask = std.posix.sigemptyset(),
.flags = 0, .flags = std.posix.SA.RESTART, // For waitpid()
}; };
std.posix.sigaction(std.posix.SIG.CHLD, &tty_control_transfer_act, null); std.posix.sigaction(std.posix.SIG.CHLD, &tty_control_transfer_act, null);