summaryrefslogtreecommitdiff
path: root/src/Compositor.cpp
diff options
context:
space:
mode:
authorvaxerski <vaxry@vaxry.net>2023-03-01 21:55:30 +0000
committervaxerski <vaxry@vaxry.net>2023-03-01 21:55:30 +0000
commit556c7dd51f6990ea391921cb6ee04911523e0cea (patch)
tree1f474d71f3644c4a77889f15a4e8f3df556dcccf /src/Compositor.cpp
parent52878161e4bbe77ba9e73c44bab03d16356e36f7 (diff)
reset signal handlers in unrecoverable
Diffstat (limited to 'src/Compositor.cpp')
-rw-r--r--src/Compositor.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp
index ca47e80a..84502f18 100644
--- a/src/Compositor.cpp
+++ b/src/Compositor.cpp
@@ -20,12 +20,17 @@ int handleCritSignal(int signo, void* data) {
void handleUnrecoverableSignal(int sig) {
+ // remove our handlers
+ signal(SIGABRT, SIG_DFL);
+ signal(SIGSEGV, SIG_DFL);
+
if (g_pHookSystem->m_bCurrentEventPlugin) {
longjmp(g_pHookSystem->m_jbHookFaultJumpBuf, 1);
return;
}
CrashReporter::createAndSaveCrash(sig);
+
abort();
}