summaryrefslogtreecommitdiff
path: root/src/Compositor.cpp
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-05-29 00:07:31 +0200
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-05-29 00:07:31 +0200
commitf06d4fca27788ca0b1a5ed88caf3884051909c3a (patch)
treee50cfa8dd2bf55e302a993172d8b3af5ccf4098d /src/Compositor.cpp
parent2cd5059cf10950d1b04cbc352fde3348549d8493 (diff)
Fix one more SIGSEGV while exiting
Diffstat (limited to 'src/Compositor.cpp')
-rw-r--r--src/Compositor.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp
index ed044fc8..eb2c9f92 100644
--- a/src/Compositor.cpp
+++ b/src/Compositor.cpp
@@ -144,6 +144,9 @@ void CCompositor::cleanupExit() {
if (!m_sWLDisplay)
return;
+ m_pLastFocus = nullptr;
+ m_pLastWindow = nullptr;
+
m_lWorkspaces.clear();
m_lWindows.clear();
@@ -620,6 +623,9 @@ bool CCompositor::doesSeatAcceptInput(wlr_surface* surface) {
}
bool CCompositor::isWindowActive(CWindow* pWindow) {
+ if (!m_pLastWindow && !m_pLastFocus)
+ return false;
+
if (!windowValidMapped(pWindow))
return false;