Looks like the controlling process group isn't being reset correctly after the "inner" bash exits:
$ trap 'echo "$(ps -o pid,tpgid -p $$)"' EXIT $ echo $$ 54581 $ set +m $ $BASH --norc -i -c 'set +m; echo $$' 54583 $ exit PID TPGID 54581 54583
Looks like the controlling process group isn't being reset correctly after the "inner" bash exits:
$ trap 'echo "$(ps -o pid,tpgid -p $$)"' EXIT $ echo $$ 54581 $ set +m $ $BASH --norc -i -c 'set +m; echo $$' 54583 $ exit PID TPGID 54581 54583