Fix problem with a fixed path separator in dumb interface.
authorDavid Griffith <dave@661.org>
Tue, 12 Feb 2019 13:17:35 +0000 (05:17 -0800)
committerDavid Griffith <dave@661.org>
Tue, 12 Feb 2019 13:17:35 +0000 (05:17 -0800)
src/dumb/dumb_input.c

index 10b4b992ac3c48db534bf370766fafc02a649ac3..b9701850f8727168370c0b80cf934a1bde2d670d 100644 (file)
@@ -415,8 +415,12 @@ char *os_read_file_name (const char *default_name, int flag)
   char buf[INPUT_BUFFER_SIZE], prompt[INPUT_BUFFER_SIZE];
   FILE *fp;
   char *tempname;
+  char path_separator[2];
   int i;
 
+  path_separator[0] = PATH_SEPARATOR;
+  path_separator[1] = 0;
+
   /* If we're restoring a game before the interpreter starts,
    * our filename is already provided.  Just go ahead silently.
    */
@@ -459,7 +463,7 @@ char *os_read_file_name (const char *default_name, int flag)
 
     /* Make sure the final character is the path separator. */
     if (file_name[strlen(file_name)-1] != PATH_SEPARATOR) {
-      strncat(file_name, "/", FILENAME_MAX - strlen(file_name) - 2);
+      strncat(file_name, path_separator, FILENAME_MAX - strlen(file_name) - 2);
     }
     strncat(file_name, tempname, strlen(file_name) - strlen(tempname) - 1);
   }