浏览代码

Complete all pending moves before restoring a saved print

Yuri D'Elia 4 年之前
父节点
当前提交
57be14fca6
共有 2 个文件被更改,包括 5 次插入3 次删除
  1. 1 0
      Firmware/mmu.cpp
  2. 4 3
      Firmware/ultralcd.cpp

+ 1 - 0
Firmware/mmu.cpp

@@ -1589,6 +1589,7 @@ void mmu_continue_loading(bool blocking)
             if (blocking)
             {
                 marlin_wait_for_click();
+                st_synchronize();
                 restore_print_from_ram_and_continue(0);
                 state = Ls::Retry;
             }

+ 4 - 3
Firmware/ultralcd.cpp

@@ -6764,12 +6764,13 @@ static bool fan_error_selftest()
 void lcd_resume_print()
 {
     lcd_return_to_status();
-    lcd_reset_alert_level();
-    lcd_setstatuspgm(_T(MSG_RESUMING_PRINT));
     lcd_reset_alert_level(); //for fan speed error
-
     if (fan_error_selftest()) return; //abort if error persists
 
+    lcd_setstatuspgm(_T(MSG_FINISHING_MOVEMENTS));
+    st_synchronize();
+
+    lcd_setstatuspgm(_T(MSG_RESUMING_PRINT));
     isPrintPaused = false;
     restore_print_from_ram_and_continue(0.0);
     pause_time += (_millis() - start_pause_print); //accumulate time when print is paused for correct statistics calculation