diff options
author | Joel Challis <[email protected]> | 2024-12-27 19:42:54 +0000 |
---|---|---|
committer | GitHub <[email protected]> | 2024-12-28 06:42:54 +1100 |
commit | f549948bbd2a2026875faab1f67ba7b8d21bb5a6 (patch) | |
tree | 653d5cd37215b8d81c71bf4aed3a972da0dda535 | |
parent | 5593e73ba71fa31155cdb81bc7c477f6501065e6 (diff) | |
download | qmk_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.py | 27 |
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']) |