diff options
Diffstat (limited to 'core/os')
-rw-r--r-- | core/os/os.cpp | 5 | ||||
-rw-r--r-- | core/os/os.h | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/core/os/os.cpp b/core/os/os.cpp index 182bab4058..8af141ef2f 100644 --- a/core/os/os.cpp +++ b/core/os/os.cpp @@ -226,6 +226,11 @@ int OS::get_exit_code() const { void OS::set_exit_code(int p_code) { _exit_code = p_code; + _is_custom_exit_code = true; +} + +bool OS::is_custom_exit_code() { + return _is_custom_exit_code; } String OS::get_locale() const { diff --git a/core/os/os.h b/core/os/os.h index 77a54ba68a..a740a23617 100644 --- a/core/os/os.h +++ b/core/os/os.h @@ -40,6 +40,7 @@ #include "core/templates/vector.h" #include <stdarg.h> +#include <stdlib.h> class OS { static OS *singleton; @@ -53,7 +54,8 @@ class OS { bool _debug_stdout = false; String _local_clipboard; bool _no_window = false; - int _exit_code = 0; + int _exit_code = EXIT_FAILURE; // unexpected exit is marked as failure + bool _is_custom_exit_code = false; int _orientation; bool _allow_hidpi = false; bool _allow_layered = false; @@ -268,6 +270,7 @@ public: virtual int get_exit_code() const; virtual void set_exit_code(int p_code); + virtual bool is_custom_exit_code(); virtual int get_processor_count() const; |