From 9f24e67348a1896c133817d4bcb08fb7a9ca0705 Mon Sep 17 00:00:00 2001 From: David Griffith Date: Tue, 4 Sep 2018 01:01:45 -0700 Subject: [PATCH] Apply same default filename fix from #92 for Curses interface. --- src/curses/ux_init.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/curses/ux_init.c b/src/curses/ux_init.c index 96459ed..3bd03b2 100644 --- a/src/curses/ux_init.c +++ b/src/curses/ux_init.c @@ -354,6 +354,8 @@ void os_process_arguments (int argc, char *argv[]) f_setup.story_path = strdup(dirname(argv[zoptind])); + /* Create nice default file names */ + f_setup.script_name = malloc((strlen(f_setup.story_name) + strlen(EXT_SCRIPT)) * sizeof(char) + 1); strncpy(f_setup.script_name, f_setup.story_name, strlen(f_setup.story_name) + 1); strncat(f_setup.script_name, EXT_SCRIPT, strlen(EXT_SCRIPT)); @@ -363,12 +365,12 @@ void os_process_arguments (int argc, char *argv[]) strncat(f_setup.command_name, EXT_COMMAND, strlen(EXT_COMMAND)); if (!f_setup.restore_mode) { - f_setup.save_name = malloc(strlen(f_setup.story_name) * sizeof(char) + 5); - strncpy(f_setup.save_name, f_setup.story_name, strlen(f_setup.story_name)); + f_setup.save_name = malloc((strlen(f_setup.story_name) + strlen(EXT_SAVE)) * sizeof(char) + 1); + strncpy(f_setup.save_name, f_setup.story_name, strlen(f_setup.story_name) + 1); strncat(f_setup.save_name, EXT_SAVE, strlen(EXT_SAVE)); } else { /*Set our auto load save as the name_save*/ - f_setup.save_name = malloc(strlen(f_setup.tmp_save_name) * sizeof(char) + 5); - strncpy(f_setup.save_name, f_setup.tmp_save_name, strlen(f_setup.tmp_save_name)); + f_setup.save_name = malloc((strlen(f_setup.tmp_save_name) + strlen(EXT_SAVE)) * sizeof(char) + 1); + strncpy(f_setup.save_name, f_setup.tmp_save_name, strlen(f_setup.tmp_save_name) + 1); free(f_setup.tmp_save_name); } -- 2.34.1