From c7102298207d9ce5526b2a515969db13defb9894 Mon Sep 17 00:00:00 2001 From: Melissa LeBlanc-Williams Date: Sat, 7 Mar 2020 10:41:46 -0800 Subject: [PATCH] Fix potential issue with passing numbers > 255 as bitmask tuple to set_digit_raw --- adafruit_ht16k33/segments.py | 2 +- examples/ht16k33_matrix_simpletest.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/adafruit_ht16k33/segments.py b/adafruit_ht16k33/segments.py index 7c63816..f95e07e 100755 --- a/adafruit_ht16k33/segments.py +++ b/adafruit_ht16k33/segments.py @@ -268,7 +268,7 @@ def set_digit_raw(self, index, bitmask): return if isinstance(bitmask, (tuple, list)): - bitmask = bitmask[0] << 8 | bitmask[1] + bitmask = ((bitmask[0] & 0xFF) << 8) | (bitmask[1] & 0xFF) # Set the digit bitmask value at the appropriate position. self._set_buffer(index * 2, bitmask & 0xFF) diff --git a/examples/ht16k33_matrix_simpletest.py b/examples/ht16k33_matrix_simpletest.py index f993928..03dc93e 100644 --- a/examples/ht16k33_matrix_simpletest.py +++ b/examples/ht16k33_matrix_simpletest.py @@ -19,7 +19,7 @@ # This creates a 16x8 matrix: matrix = matrix.Matrix16x8(i2c) # Or this creates a 16x8 matrix backpack: -# matrix = matrix.MatrixBackpack16x8(i2c) +#matrix = matrix.MatrixBackpack16x8(i2c) # Or this creates a 8x8 matrix: #matrix = matrix.Matrix8x8(i2c) # Or this creates a 8x8 bicolor matrix: