Thanks Rob,
Your stripped down sample is exactly what I do with 1 difference...I have a bunch of code after the $main-> destroy; and the menu does not exit out until this code completes. Try adding a "sleep 30;" statement after the "$main->destroy;" The exit will not occur until everything in the subroutine ends. It must be because the MainLoop subroutine callled the Submit subroutine. Any way around this?