diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-09-05 00:59:13 +0200 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-09-05 00:59:13 +0200 |
| commit | cb839c9dcc0196312e5c6b7014114d9b489e0632 (patch) | |
| tree | 6d11142c40e95e547870100e5f364c0725a3f648 /src/managers/input/InputManager.cpp | |
| parent | 3dd514a4529c3c22d227235af55c4d4d771dcfe0 (diff) | |
guard pFoundWindow in CInputManager under fullscreen
Diffstat (limited to 'src/managers/input/InputManager.cpp')
| -rw-r--r-- | src/managers/input/InputManager.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/managers/input/InputManager.cpp b/src/managers/input/InputManager.cpp index bdf33969..66015d5b 100644 --- a/src/managers/input/InputManager.cpp +++ b/src/managers/input/InputManager.cpp @@ -144,6 +144,13 @@ void CInputManager::mouseMoveUnified(uint32_t time, bool refocus) { const auto PWORKSPACE = g_pCompositor->getWorkspaceByID(PMONITOR->activeWorkspace); if (PWORKSPACE->m_bHasFullscreenWindow && !foundSurface && PWORKSPACE->m_efFullscreenMode == FULLSCREEN_FULL) { pFoundWindow = g_pCompositor->getFullscreenWindowOnWorkspace(PWORKSPACE->m_iID); + + if (!pFoundWindow) { + // what the fuck, somehow happens occasionally?? + PWORKSPACE->m_bHasFullscreenWindow = false; + return; + } + foundSurface = g_pXWaylandManager->getWindowSurface(pFoundWindow); surfacePos = pFoundWindow->m_vRealPosition.vec(); |
