From 6fabc330e3bd8156e84ef3106c07e93d210c37d1 Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 2 Mar 2023 10:56:45 +1100 Subject: [PATCH] Check all keys have matrix positions when parsing C LAYOUT macros (#19781) --- lib/python/qmk/c_parse.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/python/qmk/c_parse.py b/lib/python/qmk/c_parse.py index 3d73e66091..83ab1d1e6d 100644 --- a/lib/python/qmk/c_parse.py +++ b/lib/python/qmk/c_parse.py @@ -88,7 +88,9 @@ def find_layouts(file): for i, key in enumerate(parsed_layout): 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) - 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']] parsed_layouts[macro_name] = {