blob: d877f2b82e858e50fbc29380bcecd9a28171a783
1 | # Non-empty traps should be reset in subshell |
2 | |
3 | # HUP is special in interactive shells |
4 | trap '' HUP |
5 | # QUIT is always special |
6 | trap '' QUIT |
7 | # SYS is not special |
8 | trap '' SYS |
9 | # WINCH is harmless |
10 | trap 'bad: caught WINCH' WINCH |
11 | # With TERM we'll check whether it is reset |
12 | trap 'bad: caught TERM' TERM |
13 | |
14 | (trap; "$THIS_SH" -c 'kill -HUP $PPID'; echo Ok) |
15 | (trap; "$THIS_SH" -c 'kill -QUIT $PPID'; echo Ok) |
16 | (trap; "$THIS_SH" -c 'kill -SYS $PPID'; echo Ok) |
17 | (trap; "$THIS_SH" -c 'kill -WINCH $PPID'; echo Ok) |
18 | (trap; "$THIS_SH" -c 'kill -TERM $PPID'; echo Bad: TERM is not reset) |
19 | echo Done |
20 |