Replace two strcat() calls in dumb interface.
authorDavid Griffith <dave@661.org>
Tue, 12 Feb 2019 13:16:19 +0000 (05:16 -0800)
committerDavid Griffith <dave@661.org>
Tue, 12 Feb 2019 13:16:19 +0000 (05:16 -0800)
src/dumb/dumb_input.c

index a012ae6d42737343baa106024060eee23a580d3d..10b4b992ac3c48db534bf370766fafc02a649ac3 100644 (file)
@@ -456,10 +456,12 @@ char *os_read_file_name (const char *default_name, int flag)
     }
     tempname = strdup(file_name + i);
     strncpy(file_name, f_setup.restricted_path, FILENAME_MAX);
+
+    /* Make sure the final character is the path separator. */
     if (file_name[strlen(file_name)-1] != PATH_SEPARATOR) {
-      strcat(file_name, "/");
+      strncat(file_name, "/", FILENAME_MAX - strlen(file_name) - 2);
     }
-    strcat(file_name, tempname);
+    strncat(file_name, tempname, strlen(file_name) - strlen(tempname) - 1);
   }
 
   /* Warn if overwriting a file.  */