Check all keys have matrix positions when parsing C LAYOUT macros (#19781)

This commit is contained in:
Ryan 2023-03-02 10:56:45 +11:00 committed by GitHub
parent 80c6fbad1c
commit 6fabc330e3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 1 deletions

View File

@ -88,7 +88,9 @@ def find_layouts(file):
for i, key in enumerate(parsed_layout): for i, key in enumerate(parsed_layout):
if 'label' not in key: if 'label' not in key:
cli.log.error('Invalid LAYOUT macro in %s: Empty parameter name in macro %s at pos %s.', file, macro_name, i) cli.log.error('Invalid LAYOUT macro in %s: Empty parameter name in macro %s at pos %s.', file, macro_name, i)
elif key['label'] in matrix_locations: elif key['label'] not in matrix_locations:
cli.log.error('Invalid LAYOUT macro in %s: Key %s in macro %s has no matrix position!', file, key['label'], macro_name)
else:
key['matrix'] = matrix_locations[key['label']] key['matrix'] = matrix_locations[key['label']]
parsed_layouts[macro_name] = { parsed_layouts[macro_name] = {