From bc85f5bebfdc3637f971d8dac2927940c7f83877 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 6 Apr 2025 13:48:01 -0500 Subject: [PATCH] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Add=20Parse?= =?UTF-8?q?r::has=5Fstring?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/config/M550.cpp | 2 +- Marlin/src/gcode/control/T.cpp | 2 +- Marlin/src/gcode/lcd/M117.cpp | 2 +- Marlin/src/gcode/parser.h | 2 ++ Marlin/src/gcode/stats/M75-M78.cpp | 2 +- Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp | 2 +- 6 files changed, 7 insertions(+), 5 deletions(-) diff --git a/Marlin/src/gcode/config/M550.cpp b/Marlin/src/gcode/config/M550.cpp index 6ff0c506de..88712786da 100644 --- a/Marlin/src/gcode/config/M550.cpp +++ b/Marlin/src/gcode/config/M550.cpp @@ -42,7 +42,7 @@ void GcodeSuite::M550() { machine_name = parser.value_string(); else if (TERN(GCODE_QUOTED_STRINGS, false, parser.seen('P'))) machine_name = parser.string_arg[0] == 'P' ? &parser.string_arg[1] : parser.string_arg; - else if (parser.string_arg && parser.string_arg[0]) + else if (parser.has_string()) machine_name = parser.string_arg; else did_set = false; diff --git a/Marlin/src/gcode/control/T.cpp b/Marlin/src/gcode/control/T.cpp index 9f6fb2bb00..ce6428950e 100644 --- a/Marlin/src/gcode/control/T.cpp +++ b/Marlin/src/gcode/control/T.cpp @@ -69,7 +69,7 @@ void GcodeSuite::T(const int8_t tool_index) { reset_stepper_timeout(); #if HAS_PRUSA_MMU3 - if (parser.string_arg) { + if (parser.has_string()) { mmu3.tool_change(parser.string_arg[0], uint8_t(tool_index)); // Special commands T?/Tx/Tc return; } diff --git a/Marlin/src/gcode/lcd/M117.cpp b/Marlin/src/gcode/lcd/M117.cpp index 57a26851fd..e8b9cc46f6 100644 --- a/Marlin/src/gcode/lcd/M117.cpp +++ b/Marlin/src/gcode/lcd/M117.cpp @@ -32,7 +32,7 @@ */ void GcodeSuite::M117() { - if (parser.string_arg && parser.string_arg[0]) + if (parser.has_string()) ui.set_status_no_expire(parser.string_arg); else ui.reset_status(); diff --git a/Marlin/src/gcode/parser.h b/Marlin/src/gcode/parser.h index 401548b309..e56a723087 100644 --- a/Marlin/src/gcode/parser.h +++ b/Marlin/src/gcode/parser.h @@ -97,6 +97,8 @@ public: FORCE_INLINE static void cancel_motion_mode() { motion_mode_codenum = -1; } #endif + FORCE_INLINE static bool has_string() { return string_arg && string_arg[0]; } + #if ENABLED(DEBUG_GCODE_PARSER) static void debug(); #endif diff --git a/Marlin/src/gcode/stats/M75-M78.cpp b/Marlin/src/gcode/stats/M75-M78.cpp index 03e76d531d..8ab94577ef 100644 --- a/Marlin/src/gcode/stats/M75-M78.cpp +++ b/Marlin/src/gcode/stats/M75-M78.cpp @@ -43,7 +43,7 @@ void GcodeSuite::M75() { startOrResumeJob(); // ... ExtUI::onPrintTimerStarted() #if ENABLED(DWIN_LCD_PROUI) // TODO: Remove if M75 is never used - if (!IS_SD_PRINTING()) dwinPrintHeader(parser.string_arg && parser.string_arg[0] ? parser.string_arg : GET_TEXT(MSG_HOST_START_PRINT)); + if (!IS_SD_PRINTING()) dwinPrintHeader(parser.has_string() ? parser.string_arg : GET_TEXT(MSG_HOST_START_PRINT)); #endif } diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp index 660d7faed7..8fb672931d 100644 --- a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp @@ -100,7 +100,7 @@ void RTS::onStartup() { delay_ms(400); // Delay to allow screen to configure #if ENABLED(CONFIGURABLE_MACHINE_NAME) - const MString<32> ready(message_string, " Ready"); + const MString<32> ready(machine_name, " Ready"); onStatusChanged(ready); #else onStatusChanged(F(MACHINE_NAME " Ready"));