Replace strcpy/strcat with memcpy in aviftest.c
diff --git a/tests/aviftest.c b/tests/aviftest.c
index 0a45417..6c706c8 100644
--- a/tests/aviftest.c
+++ b/tests/aviftest.c
@@ -165,16 +165,15 @@
     static const char * ioSuffix = "/io/";
 
     char ioDir[FILENAME_MAX_LENGTH + 1];
-    size_t dataDirLen = strlen(dataDir);
-    size_t ioSuffixLen = strlen(ioSuffix);
-
-    if ((dataDirLen + ioSuffixLen) > FILENAME_MAX_LENGTH) {
+    const size_t dataDirLen = strlen(dataDir);
+    const size_t ioSuffixLen = strlen(ioSuffix);
+    const size_t ioDirLen = dataDirLen + ioSuffixLen;
+    if (ioDirLen > FILENAME_MAX_LENGTH) {
         printf("Path too long: %s\n", dataDir);
         return 1;
     }
-    strcpy(ioDir, dataDir);
-    strcat(ioDir, ioSuffix);
-    size_t ioDirLen = strlen(ioDir);
+    memcpy(ioDir, dataDir, dataDirLen);
+    memcpy(ioDir + dataDirLen, ioSuffix, ioSuffixLen + 1); // includes the NUL terminator
 
     int retCode = 0;
 
@@ -184,14 +183,14 @@
     const char * filename = nextFilename(ioDir, "avif", &nfd);
     for (; filename != NULL; filename = nextFilename(ioDir, "avif", &nfd)) {
         char fullFilename[FILENAME_MAX_LENGTH + 1];
-        size_t filenameLen = strlen(filename);
+        const size_t filenameLen = strlen(filename);
         if ((ioDirLen + filenameLen) > FILENAME_MAX_LENGTH) {
             printf("Path too long: %s\n", filename);
             retCode = 1;
             break;
         }
-        strcpy(fullFilename, ioDir);
-        strcat(fullFilename, filename);
+        memcpy(fullFilename, ioDir, ioDirLen);
+        memcpy(fullFilename + ioDirLen, filename, filenameLen + 1); // includes the NUL terminator
 
         FILE * f = fopen(fullFilename, "rb");
         if (!f) {