瀏覽代碼

Settings FIELD_TEST fix

Scott Lahteine 7 年之前
父節點
當前提交
702c8acdd5
共有 1 個檔案被更改,包括 6 行新增6 行删除
  1. 6
    6
      Marlin/src/module/configuration_store.cpp

+ 6
- 6
Marlin/src/module/configuration_store.cpp 查看文件

330
   #define EEPROM_ASSERT(TST,ERR) if (!(TST)) do{ SERIAL_ERROR_START(); SERIAL_ERRORLNPGM(ERR); eeprom_error = true; }while(0)
330
   #define EEPROM_ASSERT(TST,ERR) if (!(TST)) do{ SERIAL_ERROR_START(); SERIAL_ERRORLNPGM(ERR); eeprom_error = true; }while(0)
331
 
331
 
332
   #if ENABLED(DEBUG_EEPROM_READWRITE)
332
   #if ENABLED(DEBUG_EEPROM_READWRITE)
333
-    #define _FIELD_TEST(FIELD)                                          \
334
-      EEPROM_ASSERT(                                                    \
335
-        eeprom_error || eeprom_index == offsetof(SettingsData, FIELD),  \
336
-        "Field " STRINGIFY(FIELD) " mismatch."                          \
333
+    #define _FIELD_TEST(FIELD) \
334
+      EEPROM_ASSERT( \
335
+        eeprom_error || eeprom_index == offsetof(SettingsData, FIELD) + EEPROM_OFFSET, \
336
+        "Field " STRINGIFY(FIELD) " mismatch." \
337
       )
337
       )
338
   #else
338
   #else
339
     #define _FIELD_TEST(FIELD) NOOP
339
     #define _FIELD_TEST(FIELD) NOOP
357
    */
357
    */
358
   bool MarlinSettings::save() {
358
   bool MarlinSettings::save() {
359
     float dummy = 0.0f;
359
     float dummy = 0.0f;
360
-    char ver[4] = "000";
360
+    char ver[4] = "ERR";
361
 
361
 
362
     uint16_t working_crc = 0;
362
     uint16_t working_crc = 0;
363
 
363
 
840
 
840
 
841
     // Version has to match or defaults are used
841
     // Version has to match or defaults are used
842
     if (strncmp(version, stored_ver, 3) != 0) {
842
     if (strncmp(version, stored_ver, 3) != 0) {
843
-      if (stored_ver[0] != 'V') {
843
+      if (stored_ver[3] != '\0') {
844
         stored_ver[0] = '?';
844
         stored_ver[0] = '?';
845
         stored_ver[1] = '\0';
845
         stored_ver[1] = '\0';
846
       }
846
       }

Loading…
取消
儲存