--- remote.exp.orig 2002-03-19 10:51:48.000000000 +1100 +++ remote.exp 2002-05-09 21:35:24.000000000 +1000 @@ -179,7 +179,7 @@ # command in order to execute the execution. (English. Gotta love it.) if { ! $got_eof } { verbose "killing $pid $pgid"; - exec sh -c "exec > /dev/null 2>&1 && (kill -2 $pgid || kill -2 $pid) && sleep 5 && (kill -15 $pgid || kill $pid) && sleep 5 && (kill -9 $pgid || kill -9 $pid)" &; + exec kill -9 $pid; } # This will hang if the kill doesn't work. Nothin' to do, and it's not ok. catch "close -i $spawn_id"; @@ -317,7 +317,9 @@ # This is very, very nasty. Then again, if after did something # reasonable... set pgid "-[join $pid { -}]"; - exec sh -c "exec > /dev/null 2>&1 && (kill -2 $pgid || kill -2 $pid) && sleep 5 && (kill $pgid || kill $pid) && sleep 5 && (kill -9 $pgid || kill -9 $pid)" &; + set my_pid [lindex $pid 0]; + verbose "doing kill, my_pid is $my_pid"; + exec sh -c "kill -9 $my_pid"; } verbose "pid is $pid"; catch "close -i $shell_id";