diff --git a/wled00/FX_fcn.cpp b/wled00/FX_fcn.cpp index 56ab09c37..bb9303226 100644 --- a/wled00/FX_fcn.cpp +++ b/wled00/FX_fcn.cpp @@ -1136,7 +1136,7 @@ void WS2812FX::setColor(uint8_t slot, uint32_t c) { if (slot >= NUM_COLORS) return; for (segment &seg : _segments) { - if (seg.isSelected()) { + if (seg.isActive() && seg.isSelected()) { seg.setColor(slot, c); } } @@ -1172,7 +1172,7 @@ uint8_t WS2812FX::getFirstSelectedSegId(void) { size_t i = 0; for (segment &seg : _segments) { - if (seg.isSelected()) return i; + if (seg.isActive() && seg.isSelected()) return i; i++; } // if none selected, use the main segment