From 029c66b2bc07ca93f6cbc8fbd98ce81bac793b93 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Tue, 23 Nov 2021 16:51:56 +0100 Subject: [PATCH] fix rare crash in the bar --- src/bar/Bar.cpp | 2 +- src/windowManager.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/bar/Bar.cpp b/src/bar/Bar.cpp index f7ca2ec..9f011e4 100644 --- a/src/bar/Bar.cpp +++ b/src/bar/Bar.cpp @@ -134,7 +134,7 @@ void CStatusBar::draw() { const auto WORKSPACE = g_pWindowManager->getWorkspaceByID(g_pWindowManager->activeWorkspaces[m_iMonitorID]); - if (WORKSPACE->getHasFullscreenWindow()) // TODO: fix this + if (!WORKSPACE || WORKSPACE->getHasFullscreenWindow()) // TODO: fix this return; // Do not draw a bar on a fullscreen window. xcb_rectangle_t rectangles[] = {{(int)0, (int)0, (int)m_vecSize.x, (int)m_vecSize.y}}; diff --git a/src/windowManager.cpp b/src/windowManager.cpp index 44b9530..cdef2b4 100644 --- a/src/windowManager.cpp +++ b/src/windowManager.cpp @@ -130,11 +130,11 @@ void CWindowManager::setupRandrMonitors() { void CWindowManager::setupManager() { setupRandrMonitors(); - if (monitors.size() == 0) { + if (1 || monitors.size() == 0) { // RandR failed! Debug::log(WARN, "RandR failed!"); - #define TESTING_MON_AMOUNT 1 + #define TESTING_MON_AMOUNT 3 for (int i = 0; i < TESTING_MON_AMOUNT /* Testing on 3 monitors, RandR shouldnt fail on a real desktop */; ++i) { monitors.push_back(SMonitor()); monitors[i].vecPosition = Vector2D(i * Screen->width_in_pixels / TESTING_MON_AMOUNT, 0);