diff options
| author | vaxerski <vaxry@vaxry.net> | 2024-01-02 22:18:30 +0100 |
|---|---|---|
| committer | vaxerski <vaxry@vaxry.net> | 2024-01-02 22:18:38 +0100 |
| commit | 1512b81126dd115f089fd21244692d92034c78f8 (patch) | |
| tree | feaa043854c9e3e90c201841543e2ddf4e247b31 /src/layout/MasterLayout.cpp | |
| parent | 4f26c4e1ebf868243dc628182c88d7feb52c8472 (diff) | |
master: guard PNODE in roll*
fixes #4331
Diffstat (limited to 'src/layout/MasterLayout.cpp')
| -rw-r--r-- | src/layout/MasterLayout.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/layout/MasterLayout.cpp b/src/layout/MasterLayout.cpp index 63389c3a..2506bbf2 100644 --- a/src/layout/MasterLayout.cpp +++ b/src/layout/MasterLayout.cpp @@ -1331,6 +1331,9 @@ std::any CHyprMasterLayout::layoutMessage(SLayoutMessageHeader header, std::stri const auto PWINDOW = header.pWindow; const auto PNODE = getNodeFromWindow(PWINDOW); + if (!PNODE) + return 0; + const auto OLDMASTER = PNODE->isMaster ? PNODE : getMasterNodeOnWorkspace(PNODE->workspaceID); const auto OLDMASTERIT = std::find(m_lMasterNodesData.begin(), m_lMasterNodesData.end(), *OLDMASTER); @@ -1353,6 +1356,9 @@ std::any CHyprMasterLayout::layoutMessage(SLayoutMessageHeader header, std::stri const auto PWINDOW = header.pWindow; const auto PNODE = getNodeFromWindow(PWINDOW); + if (!PNODE) + return 0; + const auto OLDMASTER = PNODE->isMaster ? PNODE : getMasterNodeOnWorkspace(PNODE->workspaceID); const auto OLDMASTERIT = std::find(m_lMasterNodesData.begin(), m_lMasterNodesData.end(), *OLDMASTER); |
