summaryrefslogtreecommitdiff
path: root/shell/hush_test/hush-trap/subshell.tests
blob: 4564c2ee2e0d23c33654ba2ea7b940b5080cbcd5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 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

# using bash, because we don't have $PPID (yet)
(bash -c 'kill -HUP   $PPID'; echo Ok)
(bash -c 'kill -QUIT  $PPID'; echo Ok)
(bash -c 'kill -SYS   $PPID'; echo Ok)
(bash -c 'kill -WINCH $PPID'; echo Ok)
(bash -c 'kill -TERM  $PPID'; echo Bad: TERM is not reset)
echo Done