]> Repositories - hackapet/Adafruit_Blinka_Displayio.git/blobdiff - displayio/_display.py
Fixed buffer and get_refresh_areas
[hackapet/Adafruit_Blinka_Displayio.git] / displayio / _display.py
index cdf9f7860e54310306422d09d3b6b9a65779feab..ac719817987fc5e586d9922ff1370b1279ece781 100644 (file)
@@ -19,6 +19,7 @@ displayio for Blinka
 
 import time
 import struct
+from array import array
 from typing import Optional
 import digitalio
 from PIL import Image
@@ -372,9 +373,9 @@ class Display:
             if pixels_per_buffer % pixels_per_word:
                 buffer_size += 1
 
-        buffer = bytearray(buffer_size)
+        buffer = bytearray([0] * (buffer_size * struct.calcsize("I")))
         mask_length = (pixels_per_buffer // 32) + 1
-        mask = bytearray(mask_length)
+        mask = array("L", [0] * mask_length)
         remaining_rows = clipped.height()
 
         for subrect_index in range(subrectangles):