diff --git a/lgsm/functions/command_debug.sh b/lgsm/functions/command_debug.sh index 5a681c4a2..9da7ae95c 100644 --- a/lgsm/functions/command_debug.sh +++ b/lgsm/functions/command_debug.sh @@ -14,8 +14,11 @@ fn_lockfile_trap(){ rm -f "${lockdir:?}/${selfname}.lock" # resets terminal. Servers can sometimes mess up the terminal on exit. reset - fn_print_ok_nl "Closing debug" - fn_script_log_pass "Debug closed" + fn_print_dots "Stopping debug" + fn_print_ok_nl "Stopping debug" + fn_script_log_pass "Stopping debug" + # remove trap. + trap - INT core_exit.sh } @@ -85,6 +88,7 @@ fn_print_info_nl "Stopping any running servers" fn_script_log_info "Stopping any running servers" exitbypass=1 command_stop.sh +unset exitbypass fn_print_dots "Starting debug" fn_script_log_info "Starting debug" fn_print_ok_nl "Starting debug" @@ -93,27 +97,26 @@ fn_print_ok_nl "Starting debug" date '+%s' > "${lockdir}/${selfname}.lock" fn_script_log_info "Lockfile generated" fn_script_log_info "${lockdir}/${selfname}.lock" -# trap to remove lockfile on quit. -trap fn_lockfile_trap INT cd "${executabledir}" || exit # Note: do not add double quotes to ${executable} ${parms}. if [ "${engine}" == "source" ]||[ "${engine}" == "goldsrc" ]; then ${executable} ${parms} -debug -elif [ "${engine}" == "realvirtuality" ]; then +elif [ "${shortname}" == "arma3" ]; then # Arma3 requires semicolons in the module list, which need to # be escaped for regular (tmux) loading, but need to be # stripped when loading straight from the console. ${executable} ${parms//\\;/;} elif [ "${engine}" == "quake" ]; then - ${executable} ${parms} -condebug + ${executable} ${parms} -condebug else ${executable} ${parms} fi +fn_lockfile_trap + fn_print_dots "Stopping debug" fn_print_ok_nl "Stopping debug" -# remove trap. -trap - INT +fn_script_log_info "Stopping debug" core_exit.sh