drivers/neopixel: Avoid heap alloc in fill().
Previously the use of `range(start,stop,step)` caused an allocation. Replace with while loop. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
This commit is contained in:
parent
172a031dff
commit
841eeb158e
|
@ -36,10 +36,14 @@ class NeoPixel:
|
|||
|
||||
def fill(self, v):
|
||||
b = self.buf
|
||||
for i in range(self.bpp):
|
||||
l = len(self.buf)
|
||||
bpp = self.bpp
|
||||
for i in range(bpp):
|
||||
c = v[i]
|
||||
for j in range(self.ORDER[i], len(self.buf), self.bpp):
|
||||
j = self.ORDER[i]
|
||||
while j < l:
|
||||
b[j] = c
|
||||
j += bpp
|
||||
|
||||
def write(self):
|
||||
# BITSTREAM_TYPE_HIGH_LOW = 0
|
||||
|
|
Loading…
Reference in New Issue