diff --git a/Marlin/src/module/configuration_store.cpp b/Marlin/src/module/configuration_store.cpp index 6c4d21f96c..48dd33649a 100644 --- a/Marlin/src/module/configuration_store.cpp +++ b/Marlin/src/module/configuration_store.cpp @@ -330,10 +330,10 @@ void MarlinSettings::postprocess() { #define EEPROM_ASSERT(TST,ERR) if (!(TST)) do{ SERIAL_ERROR_START(); SERIAL_ERRORLNPGM(ERR); eeprom_error = true; }while(0) #if ENABLED(DEBUG_EEPROM_READWRITE) - #define _FIELD_TEST(FIELD) \ - EEPROM_ASSERT( \ - eeprom_error || eeprom_index == offsetof(SettingsData, FIELD), \ - "Field " STRINGIFY(FIELD) " mismatch." \ + #define _FIELD_TEST(FIELD) \ + EEPROM_ASSERT( \ + eeprom_error || eeprom_index == offsetof(SettingsData, FIELD) + EEPROM_OFFSET, \ + "Field " STRINGIFY(FIELD) " mismatch." \ ) #else #define _FIELD_TEST(FIELD) NOOP @@ -357,7 +357,7 @@ void MarlinSettings::postprocess() { */ bool MarlinSettings::save() { float dummy = 0.0f; - char ver[4] = "000"; + char ver[4] = "ERR"; uint16_t working_crc = 0; @@ -840,7 +840,7 @@ void MarlinSettings::postprocess() { // Version has to match or defaults are used if (strncmp(version, stored_ver, 3) != 0) { - if (stored_ver[0] != 'V') { + if (stored_ver[3] != '\0') { stored_ver[0] = '?'; stored_ver[1] = '\0'; }