Francis Moreau wrote:
> --------------
> main_cleanup () { echo main cleanup; }
> submain_cleanup () { echo sub cleanup; }
> 
> trap main_cleanup EXIT
> 
> task_in_background () {
>         echo "subshell $BASHPID"
> 
>         while :; do
>                 # echo "FOO"
>                 sleep 1
>         done
>         echo "subshell exiting..."
> }
> 
> {
>         trap submain_cleanup EXIT
>         trap
>         task_in_background
> } &
> 
> echo exiting...
> --------------
> 
> Sending TERM signal to the subshell doesn't make "submain_cleanup()"
> to be called.

And it does in ksh93.  Hmm...  And it does if I comment out the line
"trap main_cleanup EXIT".  It seems to only set the trap if no trap
handler was previously set.

Bob

Reply via email to