aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Challis <[email protected]>2024-12-27 19:42:54 +0000
committerGitHub <[email protected]>2024-12-28 06:42:54 +1100
commitf549948bbd2a2026875faab1f67ba7b8d21bb5a6 (patch)
tree653d5cd37215b8d81c71bf4aed3a972da0dda535
parent5593e73ba71fa31155cdb81bc7c477f6501065e6 (diff)
downloadqmk_firmware-master.tar.gz
qmk_firmware-master.zip
Skip parsing g_led_config when matrix_size is missing (#24739)master
-rw-r--r--lib/python/qmk/info.py27
1 files changed, 14 insertions, 13 deletions
diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py
index 74a62721a3..acf8da984f 100644
--- a/lib/python/qmk/info.py
+++ b/lib/python/qmk/info.py
@@ -773,23 +773,24 @@ def find_keyboard_c(keyboard):
def _extract_led_config(info_data, keyboard):
"""Scan all <keyboard>.c files for led config
"""
- cols = info_data['matrix_size']['cols']
- rows = info_data['matrix_size']['rows']
-
for feature in ['rgb_matrix', 'led_matrix']:
if info_data.get('features', {}).get(feature, False) or feature in info_data:
-
# Only attempt search if dd led config is missing
if 'layout' not in info_data.get(feature, {}):
- # Process
- for file in find_keyboard_c(keyboard):
- try:
- ret = find_led_config(file, cols, rows)
- if ret:
- info_data[feature] = info_data.get(feature, {})
- info_data[feature]['layout'] = ret
- except Exception as e:
- _log_warning(info_data, f'led_config: {file.name}: {e}')
+ cols = info_data.get('matrix_size', {}).get('cols')
+ rows = info_data.get('matrix_size', {}).get('rows')
+ if cols and rows:
+ # Process
+ for file in find_keyboard_c(keyboard):
+ try:
+ ret = find_led_config(file, cols, rows)
+ if ret:
+ info_data[feature] = info_data.get(feature, {})
+ info_data[feature]['layout'] = ret
+ except Exception as e:
+ _log_warning(info_data, f'led_config: {file.name}: {e}')
+ else:
+ _log_warning(info_data, 'led_config: matrix size required to parse g_led_config')
if info_data[feature].get('layout', None) and not info_data[feature].get('led_count', None):
info_data[feature]['led_count'] = len(info_data[feature]['layout'])