From 3f5e02e8f7f10ca0b3ddd4c2b5cbd187e68aad8f Mon Sep 17 00:00:00 2001 From: suchmememanyskill <38142618+suchmememanyskill@users.noreply.github.com> Date: Sat, 1 Mar 2025 13:31:56 +0100 Subject: [PATCH] Null check in printer state --- .../src/core/klipper/klipper_printer_parsers.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/CYD-Klipper/src/core/klipper/klipper_printer_parsers.cpp b/CYD-Klipper/src/core/klipper/klipper_printer_parsers.cpp index ae3a2c2..7f59456 100644 --- a/CYD-Klipper/src/core/klipper/klipper_printer_parsers.cpp +++ b/CYD-Klipper/src/core/klipper/klipper_printer_parsers.cpp @@ -18,13 +18,16 @@ void KlipperPrinter::parse_state(JsonDocument &in) const char *state = status["webhooks"]["state"]; const char *message = status["webhooks"]["state_message"]; - if (strcmp(state, "ready") == 0 && printer_data.state == PrinterStateError) + if (state != NULL) { - printer_data.state = PrinterStateIdle; - } - else if ((strcmp(state, "shutdown") == 0 || strcmp(state, "error") == 0) && printer_data.state != PrinterStateError) - { - printer_data.state = PrinterStateError; + if (strcmp(state, "ready") == 0 && printer_data.state == PrinterStateError) + { + printer_data.state = PrinterStateIdle; + } + else if ((strcmp(state, "shutdown") == 0 || strcmp(state, "error") == 0) && printer_data.state != PrinterStateError) + { + printer_data.state = PrinterStateError; + } } if (message != NULL && (printer_data.state_message == NULL || strcmp(printer_data.state_message, message)))