4
0

core_exit.sh 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/bin/bash
  2. # LGSM core_exit.sh function
  3. # Author: Daniel Gibbs
  4. # Website: https://gameservermanagers.com
  5. # Description: handles exiting of LGSM by running and reporting an exit code.
  6. fn_exit_dev_debug(){
  7. if [ -f "${rootdir}/.dev-debug" ]; then
  8. echo "${function_selfname} exiting with code: ${exitcode}"
  9. fi
  10. }
  11. if [ -n "${exitcode}" ]&&[ "${exitcode}" != "0" ]; then
  12. if [ "${exitcode}" == "1" ]; then
  13. fn_script_log_fatal "${function_selfname} exiting with code: ${exitcode}"
  14. elif [ "${exitcode}" == "2" ]; then
  15. fn_script_log_error "${function_selfname} exiting with code: ${exitcode}"
  16. elif [ "${exitcode}" == "3" ]; then
  17. fn_script_log_warn "${function_selfname} exiting with code: ${exitcode}"
  18. else
  19. fn_script_log_warn "${function_selfname} exiting with code: ${exitcode}"
  20. fi
  21. fn_exit_dev_debug
  22. # remove trap.
  23. trap - INT
  24. exit ${exitcode}
  25. elif [ -n "${exitbypass}" ]; then
  26. unset exitbypass
  27. else
  28. exitcode=0
  29. fn_script_log_pass "${function_selfname} exiting with code: ${exitcode}"
  30. fn_exit_dev_debug
  31. # remove trap.
  32. trap - INT
  33. exit ${exitcode}
  34. fi