SD-card Model Backup bug when model name greater than 8 chars

This commit is contained in:
bsongis
2012-05-23 12:18:24 +00:00
parent f9673e3b8b
commit e32eeec487
9 changed files with 23 additions and 12 deletions
+3 -2
View File
@@ -906,6 +906,7 @@ uint32_t unprotect_eeprom()
#if defined(SDCARD)
FATFS g_FATFS_Obj; // TODO not here
#define FILENAME_MAXLEN 8
const pm_char * eeBackupModel(uint8_t i_fileSrc)
{
char *buf = reusableBuffer.models.mainname;
@@ -929,9 +930,9 @@ const pm_char * eeBackupModel(uint8_t i_fileSrc)
buf[sizeof(MODELS_PATH)-1] = '/';
memcpy(&buf[sizeof(MODELS_PATH)], ModelNames[i_fileSrc], sizeof(g_model.name));
buf[sizeof(MODELS_PATH)+sizeof(g_model.name)] = '\0';
buf[sizeof(MODELS_PATH)+FILENAME_MAXLEN] = '\0';
uint8_t i = sizeof(MODELS_PATH)+sizeof(g_model.name)-1;
uint8_t i = sizeof(MODELS_PATH)+FILENAME_MAXLEN-1;
uint8_t len = 0;
while (i>sizeof(MODELS_PATH)-1) {
if (!len && buf[i])