diff --git a/src/main/blackbox/blackbox_virtual.c b/src/main/blackbox/blackbox_virtual.c index d607e6f125..7a5a76e6b1 100644 --- a/src/main/blackbox/blackbox_virtual.c +++ b/src/main/blackbox/blackbox_virtual.c @@ -87,9 +87,9 @@ bool blackboxVirtualBeginLog(void) if (blackboxVirtualFile != NULL) { return false; } - const size_t name_buffer_length = strlen(LOGFILE_PREFIX) + 5 + strlen(LOGFILE_SUFFIX) + 2; //file name template: LOG00001.BFL + const size_t name_buffer_length = snprintf(NULL, 0, "%s%05u.%s", LOGFILE_PREFIX, (largestLogFileNumber + 1) % 100000, LOGFILE_SUFFIX); char filename[name_buffer_length]; - sprintf(filename, "%s%05i.%s", LOGFILE_PREFIX, largestLogFileNumber + 1, LOGFILE_SUFFIX); + snprintf(filename, sizeof(filename), "%s%05u.%s", LOGFILE_PREFIX, (largestLogFileNumber + 1) % 100000, LOGFILE_SUFFIX); blackboxVirtualFile = fopen(filename, "w"); if (blackboxVirtualFile != NULL) { largestLogFileNumber++; @@ -111,7 +111,7 @@ void blackboxVirtualClose(void) blackboxVirtualEndLog(); } -uint32_t blackboxVirtualLogFileNumber(void) +int32_t blackboxVirtualLogFileNumber(void) { return largestLogFileNumber; } diff --git a/src/main/blackbox/blackbox_virtual.h b/src/main/blackbox/blackbox_virtual.h index 7f2eb0ee71..770bfc3c78 100644 --- a/src/main/blackbox/blackbox_virtual.h +++ b/src/main/blackbox/blackbox_virtual.h @@ -32,4 +32,4 @@ bool blackboxVirtualFlush(void); bool blackboxVirtualBeginLog(void); bool blackboxVirtualEndLog(void); void blackboxVirtualClose(void); -uint32_t blackboxVirtualLogFileNumber(void); +int32_t blackboxVirtualLogFileNumber(void);