From 0d4e2b4a3b229e19677ba98d5de0346dc7c8b2c3 Mon Sep 17 00:00:00 2001 From: _ov4 Date: Thu, 13 Aug 2026 14:10:56 +0000 Subject: errno restore --- tsh.cc | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'tsh.cc') diff --git a/tsh.cc b/tsh.cc index 72263e0..9253c8f 100644 --- a/tsh.cc +++ b/tsh.cc @@ -485,11 +485,17 @@ void sigchld_handler(int sig) */ void sigint_handler(int sig) { + int errno_backup = errno; + + int pid = fgpid(jobs); if (pid != 0) { kill(-pid, SIGINT); } + + + errno = errno_backup; return; } @@ -500,11 +506,17 @@ void sigint_handler(int sig) */ void sigtstp_handler(int sig) { + int errno_backup = errno; + + int pid = fgpid(jobs); if (pid != 0) { kill(-pid, SIGTSTP); } + + + errno = errno_backup; return; } -- cgit v1.3.1-4-g156e