From 8b9cc9a8dbebc0dc988a97d95c49cce2993529e1 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Wed, 6 Sep 2023 13:05:37 +0200 Subject: [PATCH] animationmgr: guard monitor ptr in animationSlide --- src/managers/AnimationManager.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/managers/AnimationManager.cpp b/src/managers/AnimationManager.cpp index 4172a1fff..64cb1c0c9 100644 --- a/src/managers/AnimationManager.cpp +++ b/src/managers/AnimationManager.cpp @@ -343,7 +343,10 @@ void CAnimationManager::animationSlide(CWindow* pWindow, std::string force, bool const auto PMONITOR = g_pCompositor->getMonitorFromID(pWindow->m_iMonitorID); - Vector2D posOffset; + if (!PMONITOR) + return; // unsafe state most likely + + Vector2D posOffset; if (force != "") { if (force == "bottom") @@ -544,7 +547,7 @@ void CAnimationManager::scheduleTick() { return; } - float refreshDelayMs = std::floor(1000.f / PMOSTHZ->refreshRate); + float refreshDelayMs = std::floor(1000.f / PMOSTHZ->refreshRate); const float SINCEPRES = std::chrono::duration_cast(std::chrono::system_clock::now() - PMOSTHZ->lastPresentationTimer.chrono()).count() / 1000.f;