commit bba5c14933274d47c88140106de13b1ce9391b01 parent 229633395b8b76732ee8c1502059d8cdf406ea92 Author: Joel Challis <git@zvecr.com> Date: Tue, 5 Dec 2023 13:32:07 +0000 Avoid exceptions when layouts contain OOB matrix values (#22609) Diffstat:
| M | lib/python/qmk/cli/generate/keyboard_c.py | | | 7 | +++++-- |
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/lib/python/qmk/cli/generate/keyboard_c.py b/lib/python/qmk/cli/generate/keyboard_c.py @@ -64,12 +64,15 @@ def _gen_matrix_mask(info_data): rows = info_data['matrix_size']['rows'] # Default mask to everything disabled - mask = [['0'] * cols for i in range(rows)] + mask = [['0'] * cols for _ in range(rows)] # Mirror layout macros squashed on top of each other - for layout_data in info_data['layouts'].values(): + for layout_name, layout_data in info_data['layouts'].items(): for key_data in layout_data['layout']: row, col = key_data['matrix'] + if row >= rows or col >= cols: + cli.log.error(f'Skipping matrix_mask due to {layout_name} containing invalid matrix values') + return [] mask[row][col] = '1' lines = []