You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit fe7426c
Browse filesBrowse the repository at this point in the historyBrowse files
Parth Sharma
authored and
Parth Sharma
committed
Stop the shells' commands on cancel and time-up; strip CR from the marker cwd
- Terminal: on macOS the end marker line can end in \r\n, so the parsed cwd
kept a trailing \r and relative read_file/apply_patch paths failed. The
marker line is now trimmed of \r before parsing.
- Terminal: Session::kill (end of run, --timeout-s, IPC abort/kill/closed
stdin, Terminal drop) only hung up the shell. Job control puts the running
command and each background job in its own process group, so they
survived with ppid 1. kill now sends SIGTERM (and SIGCONT) to every
process group in the shell's session, waits up to 1 s, then SIGKILLs what
is left, the shell included. Groups are listed from /proc on Linux (by
session id) and with `ps -t <pty>` on macOS, plus the foreground group
and the shell's own group.
- Terminal: a finished background session and the "did not stop on Ctrl-C"
fallback only hang up (SIGTERM/SIGKILL to the foreground command, SIGHUP
to the shell), so `nohup` servers started there keep running as before.
--linger is unchanged: it never calls kill.
- IPC: SIGTERM/SIGINT now drop the session (and its shells) before exiting
with 128+signal, instead of dying with the commands still running.
0 commit comments