From fb11330eab2b459d5e510c66a9bdf3961c8e639a Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 13 Mar 2024 00:28:08 +0000 Subject: [PATCH] Absolute paths for -kb argument should error consistently (#23262) --- lib/python/qmk/path.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/lib/python/qmk/path.py b/lib/python/qmk/path.py index 74364ee04b..bb588d2e1c 100644 --- a/lib/python/qmk/path.py +++ b/lib/python/qmk/path.py @@ -12,11 +12,19 @@ from qmk.errors import NoSuchKeyboardError def is_keyboard(keyboard_name): """Returns True if `keyboard_name` is a keyboard we can compile. """ - if keyboard_name: - keyboard_path = QMK_FIRMWARE / 'keyboards' / keyboard_name - rules_mk = keyboard_path / 'rules.mk' + if not keyboard_name: + return False - return rules_mk.exists() + # keyboard_name values of 'c:/something' or '/something' trigger append issues + # due to "If the argument is an absolute path, the previous path is ignored" + # however it should always be a folder located under qmk_firmware/keyboards + if Path(keyboard_name).is_absolute(): + return False + + keyboard_path = QMK_FIRMWARE / 'keyboards' / keyboard_name + rules_mk = keyboard_path / 'rules.mk' + + return rules_mk.exists() def under_qmk_firmware(path=Path(os.environ['ORIG_CWD'])):