mirror of
https://github.com/MarlinFirmware/Marlin.git
synced 2024-11-29 23:07:42 +00:00
Fix jumping progress bar. (#11438)
- When `LCD_SET_PROGRESS_MANUALLY` was disabled and an SD print was not active (i.e. the printer was idle), progress_bar_percent would read uninitialized memory from stack and cause progress bar to jump wildly. - Also updated conditions in `#ifdef` to match `ultralcd.cpp`
This commit is contained in:
parent
7d491aa015
commit
fae96a6a13
@ -877,11 +877,11 @@ void ST7920_Lite_Status_Screen::update_status_or_position(bool forceUpdate) {
|
|||||||
|
|
||||||
void ST7920_Lite_Status_Screen::update_progress(const bool forceUpdate) {
|
void ST7920_Lite_Status_Screen::update_progress(const bool forceUpdate) {
|
||||||
#if DISABLED(LCD_SET_PROGRESS_MANUALLY)
|
#if DISABLED(LCD_SET_PROGRESS_MANUALLY)
|
||||||
uint8_t progress_bar_percent;
|
uint8_t progress_bar_percent = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Set current percentage from SD when actively printing
|
// Set current percentage from SD when actively printing
|
||||||
#if ENABLED(SDSUPPORT)
|
#if ENABLED(LCD_SET_PROGRESS_MANUALLY) && ENABLED(SDSUPPORT) && (ENABLED(LCD_PROGRESS_BAR) || ENABLED(DOGLCD))
|
||||||
if (IS_SD_PRINTING) progress_bar_percent = card.percentDone();
|
if (IS_SD_PRINTING) progress_bar_percent = card.percentDone();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user