summaryrefslogtreecommitdiff
path: root/shell/hush_test/hush-signals/signal1.tests
blob: 61943467af815494e3db1281bd8d4480a48928c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
trap "echo got signal" USR1

for try in 1 2 3 4 5; do
    kill -USR1 $$
    sleep 0.2
    echo "sent $try signal"
done &

# Ensure "wait" has something to wait for
sleep 2 &

# Ensure we do not execute "trap" below before "kill -USR1" above
# (was getting failure on loaded machine without this)
sleep 0.1

sleeping=true
while $sleeping; do
    trap
    if wait %%; then
        echo "sleep completed"
        sleeping=false
    elif [ $? = 127 ]; then
        echo "BUG: no processes to wait for?!"
        sleeping=false
    else
        echo "wait interrupted"
    fi
done