Alexander Shishkin | ccb9771 | 2010-07-25 13:07:39 +0200 | [diff] [blame] | 1 | bug() { |
2 | trap : exit | ||||
3 | # Bug was causing sh to be run in subshell, | ||||
4 | # as if this line is replaced with (sh -c ...; exit $?) & | ||||
5 | # here: | ||||
6 | sh -c 'echo REAL_CHILD=$$' & | ||||
7 | echo PARENTS_IDEA_OF_CHILD=$! | ||||
8 | wait # make sure bkgd shell completes | ||||
9 | } | ||||
10 | |||||
11 | bug | { | ||||
12 | while read varval; do | ||||
13 | eval $varval | ||||
14 | done | ||||
15 | test x"$REAL_CHILD" != x"" \ | ||||
16 | && test x"$REAL_CHILD" = x"$PARENTS_IDEA_OF_CHILD" | ||||
17 | echo "Bug detected: $?" | ||||
18 | } |