diff --git a/Marlin/src/Marlin.cpp b/Marlin/src/Marlin.cpp
index f899143d203c4f781d7b6980feba661ebe28619b..4ec826f6c152052754ae52ef168157bb3fded00f 100644
--- a/Marlin/src/Marlin.cpp
+++ b/Marlin/src/Marlin.cpp
@@ -386,12 +386,12 @@ void disable_all_steppers() {
 #if ENABLED(G29_RETRY_AND_RECOVER)
 
   void event_probe_failure() {
+    #ifdef ACTION_ON_G29_FAILURE
+      host_action(PSTR(ACTION_ON_G29_FAILURE));
+    #endif
     #ifdef G29_FAILURE_COMMANDS
       gcode.process_subcommands_now_P(PSTR(G29_FAILURE_COMMANDS));
     #endif
-    #ifdef ACTION_ON_G29_FAILURE
-      host_action(PSTR(ACTION_ON_G29_FAILURE)); }
-    #endif
     #if ENABLED(G29_HALT_ON_FAILURE)
       #ifdef ACTION_ON_CANCEL
         host_action_cancel();
@@ -404,12 +404,12 @@ void disable_all_steppers() {
     #if ENABLED(HOST_PROMPT_SUPPORT)
       host_prompt_do(PROMPT_INFO, PSTR("G29 Retrying"));
     #endif
-    #ifdef G29_RECOVER_COMMANDS
-      gcode.process_subcommands_now_P(PSTR(G29_RECOVER_COMMANDS));
-    #endif
     #ifdef ACTION_ON_G29_RECOVER
       host_action(PSTR(ACTION_ON_G29_RECOVER));
     #endif
+    #ifdef G29_RECOVER_COMMANDS
+      gcode.process_subcommands_now_P(PSTR(G29_RECOVER_COMMANDS));
+    #endif
   }
 
 #endif