diff options
author | notaz | 2012-07-23 00:44:32 +0300 |
---|---|---|
committer | notaz | 2012-07-23 00:44:32 +0300 |
commit | 4df9f5f8e575c499371f28e86eff265e8dd96291 (patch) | |
tree | b3d8d2205cd8cbd7d00129c74bd484938d194b4a | |
parent | 2c843d964027089a747453afc0b07d0eac5835d9 (diff) | |
download | pcsx_rearmed-4df9f5f8e575c499371f28e86eff265e8dd96291.tar.gz pcsx_rearmed-4df9f5f8e575c499371f28e86eff265e8dd96291.tar.bz2 pcsx_rearmed-4df9f5f8e575c499371f28e86eff265e8dd96291.zip |
frontend: always save last cdimgpath
-rw-r--r-- | frontend/menu.c | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/frontend/menu.c b/frontend/menu.c index 3fd5425..301a10d 100644 --- a/frontend/menu.c +++ b/frontend/menu.c @@ -376,15 +376,31 @@ static int menu_write_config(int is_game) } } - if (!is_game) - fprintf(f, "lastcdimg = %s\n", last_selected_fname); - keys_write_all(f); fclose(f); return 0; } +static int menu_do_last_cd_img(int is_get) +{ + char path[256]; + FILE *f; + + snprintf(path, sizeof(path), "." PCSX_DOT_DIR "lastcdimg.txt"); + f = fopen(path, is_get ? "r" : "w"); + if (f == NULL) + return -1; + + if (is_get) + fscanf(f, "%255s", last_selected_fname); + else + fprintf(f, "%s\n", last_selected_fname); + fclose(f); + + return 0; +} + static void parse_str_val(char *cval, const char *src) { char *tmp; @@ -2222,6 +2238,7 @@ void menu_init(void) menu_set_defconfig(); menu_load_config(0); + menu_do_last_cd_img(1); last_psx_w = 320; last_psx_h = 240; last_psx_bpp = 16; @@ -2384,5 +2401,6 @@ void me_update_msg(const char *msg) void menu_finish(void) { + menu_do_last_cd_img(0); plat_cpu_clock_apply(cpu_clock_st); } |