wsrules: check for workspace ID matches on numbered workspaces

fixes #3494
This commit is contained in:
vaxerski 2023-10-05 01:31:13 +01:00
parent 1b99a69dc1
commit 3d1a167960

View file

@ -1827,7 +1827,10 @@ SMonitorRule CConfigManager::getMonitorRuleFor(const std::string& name, const st
}
SWorkspaceRule CConfigManager::getWorkspaceRuleFor(CWorkspace* pWorkspace) {
const auto IT = std::find_if(m_dWorkspaceRules.begin(), m_dWorkspaceRules.end(), [&](const auto& other) { return other.workspaceName == pWorkspace->m_szName; });
const auto WORKSPACEIDSTR = std::to_string(pWorkspace->m_iID);
const auto IT = std::find_if(m_dWorkspaceRules.begin(), m_dWorkspaceRules.end(), [&](const auto& other) {
return other.workspaceName == pWorkspace->m_szName || (pWorkspace->m_iID > 0 && WORKSPACEIDSTR == other.workspaceName);
});
if (IT == m_dWorkspaceRules.end())
return SWorkspaceRule{};
return *IT;