diff options
| author | Tyler Schneider <teschnei@gmail.com> | 2023-04-23 15:28:18 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-04-23 22:28:18 +0100 |
| commit | 67c73ec10036c5ff9bda392390ecc7af48d4feee (patch) | |
| tree | 51a0ea47c6e1331d1d41a8ece10035387def7de2 /src/managers/AnimationManager.cpp | |
| parent | f7579fc9231e3c73d5b94e66277f49d03d243b00 (diff) | |
Fixed a crash when waking up monitors in power-saving mode (#2139)
Diffstat (limited to 'src/managers/AnimationManager.cpp')
| -rw-r--r-- | src/managers/AnimationManager.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/managers/AnimationManager.cpp b/src/managers/AnimationManager.cpp index aaf42658..dd18e8ae 100644 --- a/src/managers/AnimationManager.cpp +++ b/src/managers/AnimationManager.cpp @@ -82,13 +82,19 @@ void CAnimationManager::tick() { if (PWINDOW) { WLRBOXPREV = PWINDOW->getFullWindowBoundingBox(); PMONITOR = g_pCompositor->getMonitorFromID(PWINDOW->m_iMonitorID); + if (!PMONITOR) + continue; animationsDisabled = animationsDisabled || PWINDOW->m_sAdditionalConfigData.forceNoAnims; } else if (PWORKSPACE) { PMONITOR = g_pCompositor->getMonitorFromID(PWORKSPACE->m_iMonitorID); + if (!PMONITOR) + continue; WLRBOXPREV = {(int)PMONITOR->vecPosition.x, (int)PMONITOR->vecPosition.y, (int)PMONITOR->vecSize.x, (int)PMONITOR->vecSize.y}; } else if (PLAYER) { WLRBOXPREV = PLAYER->geometry; PMONITOR = g_pCompositor->getMonitorFromVector(Vector2D(PLAYER->geometry.x, PLAYER->geometry.y) + Vector2D(PLAYER->geometry.width, PLAYER->geometry.height) / 2.f); + if (!PMONITOR) + continue; animationsDisabled = animationsDisabled || PLAYER->noAnimations; } |
