diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2019-08-19 21:58:11 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2019-08-19 21:58:11 -0400 |
commit | b4280fdfe0a39fa09366ee092e860453473ae4db (patch) | |
tree | eb687591b1dabe4aafdc329b98cf17b732995030 /klippy/extras/board_pins.py | |
parent | 67ddac776d227d9647f1fc90c32909273711c092 (diff) | |
download | kutter-b4280fdfe0a39fa09366ee092e860453473ae4db.tar.gz kutter-b4280fdfe0a39fa09366ee092e860453473ae4db.tar.xz kutter-b4280fdfe0a39fa09366ee092e860453473ae4db.zip |
board_pins: Improve config error checking
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/extras/board_pins.py')
-rw-r--r-- | klippy/extras/board_pins.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/klippy/extras/board_pins.py b/klippy/extras/board_pins.py index d8084b02..d8388cbd 100644 --- a/klippy/extras/board_pins.py +++ b/klippy/extras/board_pins.py @@ -8,10 +8,15 @@ class PrinterBoardAliases: def __init__(self, config, chip_name): ppins = config.get_printer().lookup_object('pins') pin_resolver = ppins.get_pin_resolver(chip_name) - aliases = config.get("aliases") + aliases = config.get("aliases").strip() + if aliases.endswith(','): + aliases = aliases[:-1] parts = [a.split('=', 1) for a in aliases.split(',')] - for name, value in parts: - name, value = name.strip(), value.strip() + for pair in parts: + if len(pair) != 2: + raise ppins.error("Unable to parse aliases in %s" + % (config.get_name(),)) + name, value = [s.strip() for s in pair] if value.startswith('<') and value.endswith('>'): pin_resolver.reserve_pin(name, value) else: |