diff options
| author | matjam <chrome@stupendous.net> | 2026-03-09 14:45:21 -0700 |
|---|---|---|
| committer | Vaxry <43317083+vaxerski@users.noreply.github.com> | 2026-03-10 10:06:24 +0000 |
| commit | b9ddb4bb26275115e9c9ff03b3d87c6e2fd96c45 (patch) | |
| tree | 2c8dd1d3b010bbecf841541a8fd9d2b1b7b1e1c5 /src/layout/algorithm/Algorithm.cpp | |
| parent | 8217dabc80814b6d2741dc0a75c8398fc770b26c (diff) | |
layout: fix crash on monitor reconnect due to stale workspace state
Guard against null/expired workspace and monitor pointers during layout recalculation triggered by arrangeMonitors after sleep/wake.
Diffstat (limited to 'src/layout/algorithm/Algorithm.cpp')
| -rw-r--r-- | src/layout/algorithm/Algorithm.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/layout/algorithm/Algorithm.cpp b/src/layout/algorithm/Algorithm.cpp index cfb5b7e3..b83a03a3 100644 --- a/src/layout/algorithm/Algorithm.cpp +++ b/src/layout/algorithm/Algorithm.cpp @@ -105,7 +105,10 @@ void CAlgorithm::recalculate() { m_floating->recalculate(); const auto PWORKSPACE = m_space->workspace(); - const auto PMONITOR = PWORKSPACE->m_monitor; + if (!PWORKSPACE) + return; + + const auto PMONITOR = PWORKSPACE->m_monitor; if (PWORKSPACE->m_hasFullscreenWindow && PMONITOR) { // massive hack from the fullscreen func |
