summaryrefslogtreecommitdiffstats
path: root/platform/macos
diff options
context:
space:
mode:
authornaelstrof <naelstrof@gmail.com>2023-09-22 19:29:53 -0600
committernaelstrof <naelstrof@gmail.com>2023-09-22 20:06:58 -0600
commitb49e9c9896e131201e2cf4550f7060b767e497c0 (patch)
tree9cade97d768aa133b352786ca6f61832c9fd3118 /platform/macos
parentc12d63556b5c1da03a00dd4c45c40e60bd8d68c2 (diff)
downloadredot-engine-b49e9c9896e131201e2cf4550f7060b767e497c0.tar.gz
Made signal handling more uniform. Fixes #82102
Diffstat (limited to 'platform/macos')
-rw-r--r--platform/macos/crash_handler_macos.mm10
1 files changed, 7 insertions, 3 deletions
diff --git a/platform/macos/crash_handler_macos.mm b/platform/macos/crash_handler_macos.mm
index 7f9a88121e..7c0cab0210 100644
--- a/platform/macos/crash_handler_macos.mm
+++ b/platform/macos/crash_handler_macos.mm
@@ -72,6 +72,10 @@ static uint64_t load_address() {
}
static void handle_crash(int sig) {
+ signal(SIGSEGV, SIG_DFL);
+ signal(SIGFPE, SIG_DFL);
+ signal(SIGILL, SIG_DFL);
+
if (OS::get_singleton() == nullptr) {
abort();
}
@@ -186,9 +190,9 @@ void CrashHandler::disable() {
}
#ifdef CRASH_HANDLER_ENABLED
- signal(SIGSEGV, nullptr);
- signal(SIGFPE, nullptr);
- signal(SIGILL, nullptr);
+ signal(SIGSEGV, SIG_DFL);
+ signal(SIGFPE, SIG_DFL);
+ signal(SIGILL, SIG_DFL);
#endif
disabled = true;