From 53dfe619d0d33f2f47fb9b5ff9aedb3a0854248f Mon Sep 17 00:00:00 2001 From: cjkas Date: Mon, 12 Oct 2026 20:55:20 +0200 Subject: [PATCH] fix: don't read a missing linked shade's flags in group state events SomfyGroup::emitState skipped a linked shade id that no longer resolves when listing the shades, but still read its flags through the null pointer. Co-Authored-By: Claude Opus 5.5 --- src/Somfy.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Somfy.cpp b/src/Somfy.cpp index 3d91e37..9e09ef2 100644 --- a/src/Somfy.cpp +++ b/src/Somfy.cpp @@ -1565,8 +1565,10 @@ void SomfyGroup::emitState(uint8_t num, const char *evt) { for(uint8_t i = 0; i < SOMFY_MAX_GROUPED_SHADES; i++) { if(this->linkedShades[i] != 255 && this->linkedShades[i] != 0) { SomfyShade *shade = somfy.getShadeById(this->linkedShades[i]); - if(shade) json->addElem(this->linkedShades[i]); - flags |= shade->flags; + if(shade) { + json->addElem(this->linkedShades[i]); + flags |= shade->flags; + } } } json->endArray();