diff options
| author | vaxerski <vaxry@vaxry.net> | 2023-03-01 15:08:44 +0000 |
|---|---|---|
| committer | vaxerski <vaxry@vaxry.net> | 2023-03-01 15:08:44 +0000 |
| commit | 6c250df77e2af7c56b1f424ea44430746160f797 (patch) | |
| tree | 8d1a1baf08033f871d121283eef0c44733534d27 /src/Compositor.cpp | |
| parent | 7c5c7ced9170b5c1e34825735a720372a6c0c110 (diff) | |
generate coredumps on sigabrt too
Diffstat (limited to 'src/Compositor.cpp')
| -rw-r--r-- | src/Compositor.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp index 4e3596a7..ca47e80a 100644 --- a/src/Compositor.cpp +++ b/src/Compositor.cpp @@ -18,14 +18,14 @@ int handleCritSignal(int signo, void* data) { return 0; // everything went fine } -void handleSegv(int sig) { +void handleUnrecoverableSignal(int sig) { if (g_pHookSystem->m_bCurrentEventPlugin) { longjmp(g_pHookSystem->m_jbHookFaultJumpBuf, 1); return; } - CrashReporter::createAndSaveCrash(); + CrashReporter::createAndSaveCrash(sig); abort(); } @@ -74,7 +74,8 @@ CCompositor::CCompositor() { // register crit signal handler wl_event_loop_add_signal(m_sWLEventLoop, SIGTERM, handleCritSignal, nullptr); - signal(SIGSEGV, handleSegv); + signal(SIGSEGV, handleUnrecoverableSignal); + signal(SIGABRT, handleUnrecoverableSignal); //wl_event_loop_add_signal(m_sWLEventLoop, SIGINT, handleCritSignal, nullptr); m_sWLRBackend = wlr_backend_autocreate(m_sWLDisplay, &m_sWLRSession); |
