20 lines
580 B
Plaintext
20 lines
580 B
Plaintext
|
# Non-empty traps should be reset in subshell
|
||
|
|
||
|
# HUP is special in interactive shells
|
||
|
trap '' HUP
|
||
|
# QUIT is always special
|
||
|
trap '' QUIT
|
||
|
# SYS is not special
|
||
|
trap '' SYS
|
||
|
# WINCH is harmless
|
||
|
trap 'bad: caught WINCH' WINCH
|
||
|
# With TERM we'll check whether it is reset
|
||
|
trap 'bad: caught TERM' TERM
|
||
|
|
||
|
(trap; "$THIS_SH" -c 'kill -HUP $PPID'; echo Ok)
|
||
|
(trap; "$THIS_SH" -c 'kill -QUIT $PPID'; echo Ok)
|
||
|
(trap; "$THIS_SH" -c 'kill -SYS $PPID'; echo Ok)
|
||
|
(trap; "$THIS_SH" -c 'kill -WINCH $PPID'; echo Ok)
|
||
|
(trap; "$THIS_SH" -c 'kill -TERM $PPID'; echo Bad: TERM is not reset)
|
||
|
echo Done
|