diff --git a/adafruit_pypixelbuf.py b/adafruit_pypixelbuf.py index 8273146..38e51e8 100644 --- a/adafruit_pypixelbuf.py +++ b/adafruit_pypixelbuf.py @@ -289,9 +289,7 @@ def _set_item( def __setitem__(self, index, val): if isinstance(index, slice): - start = index.start if index.start is not None else 0 - stop = index.stop if index.stop is not None else len(self) - step = index.step if index.step is not None else 1 + start, stop, step = index.indices(self._pixels) for val_i, in_i in enumerate(range(start, stop, step)): r, g, b, w = self._parse_color(val[val_i]) self._set_item(in_i, r, g, b, w)