From 2ea222ee3427652c671a6da252b5089a00c55087 Mon Sep 17 00:00:00 2001 From: ItsOhen Date: Mon, 2 Feb 2026 16:02:38 +0100 Subject: [PATCH] matcher: fix stale state id (#335) --- src/config/WallpaperMatcher.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/config/WallpaperMatcher.cpp b/src/config/WallpaperMatcher.cpp index 3c67f36..1d6916d 100644 --- a/src/config/WallpaperMatcher.cpp +++ b/src/config/WallpaperMatcher.cpp @@ -65,6 +65,8 @@ std::optional> CWallpaperM std::optional> CWallpaperMatcher::matchSetting(const std::string_view& monName, const std::string_view& monDesc) { // match explicit for (const auto& s : m_settings) { + if (isWildcard(s.monitor)) + continue; if (s.monitor != monName && !("desc:"s + std::string{monDesc}).starts_with(s.monitor)) continue; return s; @@ -96,7 +98,7 @@ void CWallpaperMatcher::recalcStates() { auto& activeState = getState(name); if (!STATE) - activeState = {.name = name, .desc = desc}; + activeState = {.name = name, .desc = desc, .currentID = CConfigManager::SETTING_INVALID}; else { activeState.name = name; activeState.desc = desc;