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