Replace all usages of sprintf with snprintf
diff --git a/tests/aviftest.c b/tests/aviftest.c
index 27114d7..eada156 100644
--- a/tests/aviftest.c
+++ b/tests/aviftest.c
@@ -30,7 +30,8 @@
}
} else {
char filenameBuffer[2048];
- sprintf(filenameBuffer, "%s\\*", parentDir);
+ snprintf(filenameBuffer, sizeof(filenameBuffer), "%s\\*", parentDir);
+ filenameBuffer[sizeof(filenameBuffer) - 1] = 0;
nfd->handle = FindFirstFile(filenameBuffer, &nfd->wfd);
if (nfd->handle == INVALID_HANDLE_VALUE) {
return NULL;
@@ -146,7 +147,8 @@
char * jsonString = cJSON_PrintUnformatted(tests);
char testJSONFilename[2048];
- sprintf(testJSONFilename, "%s/tests.json", dataDir);
+ snprintf(testJSONFilename, sizeof(testJSONFilename), "%s/tests.json", dataDir);
+ testJSONFilename[sizeof(testJSONFilename) - 1] = 0;
FILE * f = fopen(testJSONFilename, "wb");
if (f) {
fprintf(f, "%s", jsonString);
@@ -170,7 +172,8 @@
printf("AVIF Test Suite: Running Tests...\n");
char testJSONFilename[2048];
- sprintf(testJSONFilename, "%s/tests.json", dataDir);
+ snprintf(testJSONFilename, sizeof(testJSONFilename), "%s/tests.json", dataDir);
+ testJSONFilename[sizeof(testJSONFilename) - 1] = 0;
FILE * f = fopen(testJSONFilename, "rb");
if (!f) {
printf("ERROR: Failed to read: %s\n", testJSONFilename);
diff --git a/tests/testcase.c b/tests/testcase.c
index 0baea81..8d9a53e 100644
--- a/tests/testcase.c
+++ b/tests/testcase.c
@@ -77,14 +77,16 @@
}
char nameBuffer[1024];
- sprintf(nameBuffer,
- "%s_%s_to_%s_qp%d_%d_speed%d",
- basenameBuffer,
- choiceToString(tc->encodeChoice),
- choiceToString(tc->decodeChoice),
- tc->minQuantizer,
- tc->maxQuantizer,
- tc->speed);
+ snprintf(nameBuffer,
+ sizeof(nameBuffer),
+ "%s_%s_to_%s_qp%d_%d_speed%d",
+ basenameBuffer,
+ choiceToString(tc->encodeChoice),
+ choiceToString(tc->decodeChoice),
+ tc->minQuantizer,
+ tc->maxQuantizer,
+ tc->speed);
+ nameBuffer[sizeof(nameBuffer) - 1] = 0;
if (tc->name) {
free(tc->name);
}
@@ -191,7 +193,8 @@
}
char y4mFilename[2048];
- sprintf(y4mFilename, "%s/%s", dataDir, tc->inputFilename);
+ snprintf(y4mFilename, sizeof(y4mFilename), "%s/%s", dataDir, tc->inputFilename);
+ y4mFilename[sizeof(y4mFilename) - 1] = 0;
avifImage * image = avifImageCreateEmpty();
if (!y4mRead(image, y4mFilename)) {