mirror of
https://github.com/libretro/RetroArch
synced 2025-02-27 00:40:20 +00:00
Move code to paths.c
This commit is contained in:
parent
bb6bc9bd6d
commit
082476f7b2
29
command.c
29
command.c
@ -2445,35 +2445,6 @@ bool command_event(enum event_command cmd, void *data)
|
||||
content_save_ram_file(i);
|
||||
}
|
||||
return true;
|
||||
case CMD_EVENT_SAVEFILES_DEINIT:
|
||||
{
|
||||
global_t *global = global_get_ptr();
|
||||
if (!global)
|
||||
break;
|
||||
|
||||
if (global->savefiles)
|
||||
string_list_free(global->savefiles);
|
||||
global->savefiles = NULL;
|
||||
}
|
||||
break;
|
||||
case CMD_EVENT_SAVEFILES_INIT:
|
||||
{
|
||||
global_t *global = global_get_ptr();
|
||||
global->sram.use = global->sram.use && !global->sram.save_disable;
|
||||
#ifdef HAVE_NETPLAY
|
||||
global->sram.use = global->sram.use &&
|
||||
(!netplay_driver_ctl(RARCH_NETPLAY_CTL_IS_DATA_INITED, NULL)
|
||||
|| !global->netplay.is_client);
|
||||
#endif
|
||||
|
||||
if (!global->sram.use)
|
||||
RARCH_LOG("%s\n",
|
||||
msg_hash_to_str(MSG_SRAM_WILL_NOT_BE_SAVED));
|
||||
|
||||
if (global->sram.use)
|
||||
command_event(CMD_EVENT_AUTOSAVE_INIT, NULL);
|
||||
}
|
||||
break;
|
||||
case CMD_EVENT_BSV_MOVIE_DEINIT:
|
||||
bsv_movie_ctl(BSV_MOVIE_CTL_DEINIT, NULL);
|
||||
break;
|
||||
|
@ -158,10 +158,6 @@ enum event_command
|
||||
/* Initializes controllers. */
|
||||
CMD_EVENT_CONTROLLERS_INIT,
|
||||
CMD_EVENT_SAVEFILES,
|
||||
/* Initializes savefiles. */
|
||||
CMD_EVENT_SAVEFILES_INIT,
|
||||
/* Deinitializes savefiles. */
|
||||
CMD_EVENT_SAVEFILES_DEINIT,
|
||||
/* Initializes cheats. */
|
||||
CMD_EVENT_CHEATS_INIT,
|
||||
/* Deinitializes cheats. */
|
||||
|
44
paths.c
44
paths.c
@ -25,6 +25,10 @@
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_NETPLAY
|
||||
#include "network/netplay/netplay.h"
|
||||
#endif
|
||||
|
||||
#include "dirs.h"
|
||||
#include "paths.h"
|
||||
|
||||
@ -382,11 +386,45 @@ static void path_init_savefile_rtc(void)
|
||||
string_list_append(global->savefiles, savefile_name_rtc, attr);
|
||||
}
|
||||
|
||||
static void path_init_savefile(void)
|
||||
void path_deinit_savefile(void)
|
||||
{
|
||||
global_t *global = global_get_ptr();
|
||||
|
||||
if (!global)
|
||||
return;
|
||||
|
||||
if (global->savefiles)
|
||||
string_list_free(global->savefiles);
|
||||
global->savefiles = NULL;
|
||||
}
|
||||
|
||||
void path_init_savefile(void)
|
||||
{
|
||||
global_t *global = global_get_ptr();
|
||||
|
||||
if (!global)
|
||||
return;
|
||||
|
||||
global->sram.use = global->sram.use && !global->sram.save_disable;
|
||||
#ifdef HAVE_NETPLAY
|
||||
global->sram.use = global->sram.use &&
|
||||
(!netplay_driver_ctl(RARCH_NETPLAY_CTL_IS_DATA_INITED, NULL)
|
||||
|| !global->netplay.is_client);
|
||||
#endif
|
||||
|
||||
if (!global->sram.use)
|
||||
RARCH_LOG("%s\n",
|
||||
msg_hash_to_str(MSG_SRAM_WILL_NOT_BE_SAVED));
|
||||
|
||||
if (global->sram.use)
|
||||
command_event(CMD_EVENT_AUTOSAVE_INIT, NULL);
|
||||
}
|
||||
|
||||
static void path_init_savefile_internal(void)
|
||||
{
|
||||
global_t *global = global_get_ptr();
|
||||
|
||||
command_event(CMD_EVENT_SAVEFILES_DEINIT, NULL);
|
||||
path_deinit_savefile();
|
||||
|
||||
global->savefiles = string_list_new();
|
||||
retro_assert(global->savefiles);
|
||||
@ -419,7 +457,7 @@ void path_fill_names(void)
|
||||
{
|
||||
global_t *global = global_get_ptr();
|
||||
|
||||
path_init_savefile();
|
||||
path_init_savefile_internal();
|
||||
bsv_movie_set_path(global->name.savefile);
|
||||
|
||||
if (string_is_empty(path_main_basename))
|
||||
|
4
paths.h
4
paths.h
@ -29,6 +29,10 @@ enum rarch_content_type
|
||||
RARCH_CONTENT_IMAGE
|
||||
};
|
||||
|
||||
void path_deinit_savefile(void);
|
||||
|
||||
void path_init_savefile(void);
|
||||
|
||||
/* fill functions */
|
||||
|
||||
void path_fill_names(void);
|
||||
|
@ -1066,7 +1066,9 @@ bool retroarch_main_init(int argc, char *argv[])
|
||||
command_event(CMD_EVENT_CONTROLLERS_INIT, NULL);
|
||||
command_event(CMD_EVENT_RECORD_INIT, NULL);
|
||||
command_event(CMD_EVENT_CHEATS_INIT, NULL);
|
||||
command_event(CMD_EVENT_SAVEFILES_INIT, NULL);
|
||||
|
||||
path_init_savefile();
|
||||
|
||||
command_event(CMD_EVENT_SET_PER_GAME_RESOLUTION, NULL);
|
||||
|
||||
rarch_ctl(RARCH_CTL_UNSET_ERROR_ON_INIT, NULL);
|
||||
@ -1157,7 +1159,8 @@ bool rarch_ctl(enum rarch_ctl_state state, void *data)
|
||||
|
||||
command_event(CMD_EVENT_TEMPORARY_CONTENT_DEINIT, NULL);
|
||||
command_event(CMD_EVENT_SUBSYSTEM_FULLPATHS_DEINIT, NULL);
|
||||
command_event(CMD_EVENT_SAVEFILES_DEINIT, NULL);
|
||||
|
||||
path_deinit_savefile();
|
||||
|
||||
rarch_ctl(RARCH_CTL_UNSET_INITED, NULL);
|
||||
break;
|
||||
|
Loading…
x
Reference in New Issue
Block a user