diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp
index b9a88b512a0..e38b7bcb656 100644
--- a/Marlin/Marlin_main.cpp
+++ b/Marlin/Marlin_main.cpp
@@ -332,7 +332,7 @@ uint8_t active_extruder = 0;
 // Relative Mode. Enable with G91, disable with G90.
 static bool relative_mode = false;
 
-bool cancel_heatup = false;
+bool wait_for_heatup = true;
 
 const char errormagic[] PROGMEM = "Error:";
 const char echomagic[] PROGMEM = "echo:";
@@ -1107,7 +1107,7 @@ inline void get_serial_commands() {
 
       // If command was e-stop process now
       if (strcmp(command, "M112") == 0) kill(PSTR(MSG_KILLED));
-      if (strcmp(command, "M108") == 0) cancel_heatup = true;
+      if (strcmp(command, "M108") == 0) wait_for_heatup = false;
 
       #if defined(NO_TIMEOUTS) && NO_TIMEOUTS > 0
         last_command_time = ms;
@@ -4540,9 +4540,7 @@ inline void gcode_M105() {
 /**
  * M108: Cancel heatup and wait for the hotend and bed, this G-code is asynchronously handled in the get_serial_commands() parser
  */
-inline void gcode_M108() {
-  cancel_heatup = true;
-}
+inline void gcode_M108() { wait_for_heatup = false; }
 
 /**
  * M109: Sxxx Wait for extruder(s) to reach temperature. Waits only when heating.
@@ -4602,7 +4600,7 @@ inline void gcode_M109() {
 
   float theTarget = -1.0, old_temp = 9999.0;
   bool wants_to_cool = false;
-  cancel_heatup = false;
+  wait_for_heatup = true;
   millis_t now, next_temp_ms = 0, next_cool_check_ms = 0;
 
   KEEPALIVE_STATE(NOT_BUSY);
@@ -4666,7 +4664,7 @@ inline void gcode_M109() {
       }
     }
 
-  } while (!cancel_heatup && TEMP_CONDITIONS);
+  } while (wait_for_heatup && TEMP_CONDITIONS);
 
   LCD_MESSAGEPGM(MSG_HEATING_COMPLETE);
   KEEPALIVE_STATE(IN_HANDLER);
@@ -4696,7 +4694,7 @@ inline void gcode_M109() {
 
     float theTarget = -1.0, old_temp = 9999.0;
     bool wants_to_cool = false;
-    cancel_heatup = false;
+    wait_for_heatup = true;
     millis_t now, next_temp_ms = 0, next_cool_check_ms = 0;
 
     KEEPALIVE_STATE(NOT_BUSY);
@@ -4760,7 +4758,7 @@ inline void gcode_M109() {
         }
       }
 
-    } while (!cancel_heatup && TEMP_BED_CONDITIONS);
+    } while (wait_for_heatup && TEMP_BED_CONDITIONS);
 
     LCD_MESSAGEPGM(MSG_BED_DONE);
     KEEPALIVE_STATE(IN_HANDLER);
diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp
index 304174330dc..ca0db6d6714 100755
--- a/Marlin/ultralcd.cpp
+++ b/Marlin/ultralcd.cpp
@@ -559,7 +559,7 @@ static void lcd_status_screen() {
       stepper.quick_stop();
       print_job_timer.stop();
       thermalManager.autotempShutdown();
-      cancel_heatup = true;
+      wait_for_heatup = false;
       lcd_setstatus(MSG_PRINT_ABORTED, true);
       #if DISABLED(DELTA) && DISABLED(SCARA)
         set_current_position_from_planner();
diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h
index fd5c4fc572f..cc0a10fd3be 100644
--- a/Marlin/ultralcd.h
+++ b/Marlin/ultralcd.h
@@ -95,7 +95,7 @@
   extern int absPreheatHPBTemp;
   extern int absPreheatFanSpeed;
 
-  extern bool cancel_heatup;
+  extern bool wait_for_heatup;
 
   #if ENABLED(FILAMENT_LCD_DISPLAY)
     extern millis_t previous_lcd_status_ms;