From 4034aa2c60d7ed88cb64e7c36f42ec388c28cfb2 Mon Sep 17 00:00:00 2001 From: Jef <54236+ElJeffe@users.noreply.github.com> Date: Tue, 15 Nov 2022 11:18:04 +0100 Subject: [PATCH] possible crash when current workspace does not exist (#1023) Co-authored-by: Jef Steelant --- src/managers/KeybindManager.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/managers/KeybindManager.cpp b/src/managers/KeybindManager.cpp index 9bd52ae8..a2f76d69 100644 --- a/src/managers/KeybindManager.cpp +++ b/src/managers/KeybindManager.cpp @@ -680,7 +680,7 @@ void CKeybindManager::changeworkspace(std::string args) { const auto PCURRENTWORKSPACE = g_pCompositor->getWorkspaceByID(g_pCompositor->m_pLastMonitor->activeWorkspace); static auto *const PBACKANDFORTH = &g_pConfigManager->getConfigValuePtr("binds:workspace_back_and_forth")->intValue; - if (*PBACKANDFORTH && PCURRENTWORKSPACE->m_iID == workspaceToChangeTo && PCURRENTWORKSPACE->m_iPrevWorkspaceID != -1 && !internal) { + if (*PBACKANDFORTH && PCURRENTWORKSPACE && PCURRENTWORKSPACE->m_iID == workspaceToChangeTo && PCURRENTWORKSPACE->m_iPrevWorkspaceID != -1 && !internal) { const auto PPREVWORKSPACE = g_pCompositor->getWorkspaceByID(PCURRENTWORKSPACE->m_iPrevWorkspaceID); @@ -699,7 +699,7 @@ void CKeybindManager::changeworkspace(std::string args) { if (!*PALLOWWORKSPACECYCLES) PCURRENTWORKSPACE->m_iPrevWorkspaceID = -1; - } else if (PCURRENTWORKSPACE->m_iID == workspaceToChangeTo && !internal) + } else if (PCURRENTWORKSPACE && PCURRENTWORKSPACE->m_iID == workspaceToChangeTo && !internal) return; // remove constraints