aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tag.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2015-11-14 23:57:47 +0000
committerIngo Schwarze <schwarze@openbsd.org>2015-11-14 23:57:47 +0000
commit15be0ab8c964a27a1e5cfa3fdf7a8d5c5a94718b (patch)
treedc1c111a7a56c4e724754f6478fca23ce241eb40 /tag.c
parentd3b0efc7635aefb8712b44baed58a7a281b97b40 (diff)
downloadmandoc-15be0ab8c964a27a1e5cfa3fdf7a8d5c5a94718b.tar.gz
mandoc-15be0ab8c964a27a1e5cfa3fdf7a8d5c5a94718b.tar.zst
mandoc-15be0ab8c964a27a1e5cfa3fdf7a8d5c5a94718b.zip
Fix an issue reported by deraadt@: When hitting Ctrl-Backslash (= SIGQUIT)
in the less(1) spawned by man(1), man(1) died uncleanly, leaving behind its temp files, and killed less(1) uncleanly as well with SIGPIPE, leaving the terminal in the wrong state. Fix this by giving less(1) its own process group and handing it control of the terminal, but in such a way that Ctrl-z (= SIGSTOP) still works: In that case, let man(1) stop itself, too, and let it continue the pager when it continues itself. Joint work with millert@ who contributed most of the expertise required, and also most parts of the code. OK deraadt@ millert@
Diffstat (limited to 'tag.c')
0 files changed, 0 insertions, 0 deletions