fix proper null-terminator in filename. Thanks to @metalauricle

This commit is contained in:
iceman1001 2021-05-02 16:18:02 +02:00
commit 49c764de8c

View file

@ -163,6 +163,7 @@ static void save_to_flash(uint8_t *data, uint16_t datalen, char *filename) {
rdv40_spiffs_lazy_mount(); rdv40_spiffs_lazy_mount();
char fn[SPIFFS_OBJ_NAME_LEN]; char fn[SPIFFS_OBJ_NAME_LEN];
memset(fn, 0, sizeof(fn));
if (filename == NULL) { if (filename == NULL) {
sprintf(fn, "iclass-%02X%02X%02X%02X%02X%02X%02X%02X.bin", sprintf(fn, "iclass-%02X%02X%02X%02X%02X%02X%02X%02X.bin",
@ -170,7 +171,7 @@ static void save_to_flash(uint8_t *data, uint16_t datalen, char *filename) {
data[4], data[5], data[6], data[7] data[4], data[5], data[6], data[7]
); );
} else { } else {
int fnlen = MIN(strlen(filename), SPIFFS_OBJ_NAME_LEN); int fnlen = MIN(strlen(filename), SPIFFS_OBJ_NAME_LEN - 1);
// if the given name len longer than buffer allows, cut it down to size // if the given name len longer than buffer allows, cut it down to size
memcpy(fn, filename, fnlen); memcpy(fn, filename, fnlen);
} }