Refactor rarch_init_rewind/rarch_deinit_rewind
This commit is contained in:
parent
d70693345c
commit
15898a98f0
|
@ -100,6 +100,7 @@ enum basic_event
|
||||||
RARCH_CMD_PREPARE_DUMMY,
|
RARCH_CMD_PREPARE_DUMMY,
|
||||||
RARCH_CMD_QUIT,
|
RARCH_CMD_QUIT,
|
||||||
RARCH_CMD_REINIT,
|
RARCH_CMD_REINIT,
|
||||||
|
RARCH_CMD_REWIND,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum menu_enums
|
enum menu_enums
|
||||||
|
@ -780,8 +781,6 @@ void rarch_deinit_msg_queue(void);
|
||||||
void rarch_input_poll(void);
|
void rarch_input_poll(void);
|
||||||
void rarch_check_overlay(void);
|
void rarch_check_overlay(void);
|
||||||
void rarch_check_block_hotkey(void);
|
void rarch_check_block_hotkey(void);
|
||||||
void rarch_init_rewind(void);
|
|
||||||
void rarch_deinit_rewind(void);
|
|
||||||
bool rarch_check_fullscreen(void);
|
bool rarch_check_fullscreen(void);
|
||||||
void rarch_disk_control_set_eject(bool state, bool log);
|
void rarch_disk_control_set_eject(bool state, bool log);
|
||||||
void rarch_disk_control_set_index(unsigned index);
|
void rarch_disk_control_set_index(unsigned index);
|
||||||
|
|
15
retroarch.c
15
retroarch.c
|
@ -1494,7 +1494,7 @@ static void deinit_cheats(void)
|
||||||
g_extern.cheat = NULL;
|
g_extern.cheat = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
void rarch_init_rewind(void)
|
static void init_rewind(void)
|
||||||
{
|
{
|
||||||
#ifdef HAVE_NETPLAY
|
#ifdef HAVE_NETPLAY
|
||||||
if (g_extern.netplay)
|
if (g_extern.netplay)
|
||||||
|
@ -1529,7 +1529,7 @@ void rarch_init_rewind(void)
|
||||||
state_manager_push_do(g_extern.state_manager);
|
state_manager_push_do(g_extern.state_manager);
|
||||||
}
|
}
|
||||||
|
|
||||||
void rarch_deinit_rewind(void)
|
static void deinit_rewind(void)
|
||||||
{
|
{
|
||||||
if (g_extern.state_manager)
|
if (g_extern.state_manager)
|
||||||
state_manager_free(g_extern.state_manager);
|
state_manager_free(g_extern.state_manager);
|
||||||
|
@ -3001,8 +3001,7 @@ int rarch_main_init(int argc, char *argv[])
|
||||||
init_command();
|
init_command();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
rarch_init_rewind();
|
init_rewind();
|
||||||
|
|
||||||
init_controllers();
|
init_controllers();
|
||||||
|
|
||||||
#ifdef HAVE_RECORD
|
#ifdef HAVE_RECORD
|
||||||
|
@ -3146,6 +3145,12 @@ void rarch_main_command(unsigned action)
|
||||||
case RARCH_CMD_REINIT:
|
case RARCH_CMD_REINIT:
|
||||||
rarch_set_fullscreen(g_settings.video.fullscreen);
|
rarch_set_fullscreen(g_settings.video.fullscreen);
|
||||||
break;
|
break;
|
||||||
|
case RARCH_CMD_REWIND:
|
||||||
|
if (g_settings.rewind_enable)
|
||||||
|
init_rewind();
|
||||||
|
else
|
||||||
|
deinit_rewind();
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3292,7 +3297,7 @@ void rarch_main_deinit(void)
|
||||||
#ifdef HAVE_NETPLAY
|
#ifdef HAVE_NETPLAY
|
||||||
if (!g_extern.netplay)
|
if (!g_extern.netplay)
|
||||||
#endif
|
#endif
|
||||||
rarch_deinit_rewind();
|
deinit_rewind();
|
||||||
|
|
||||||
deinit_cheats();
|
deinit_cheats();
|
||||||
|
|
||||||
|
|
|
@ -978,6 +978,7 @@ static void general_read_handler(const void *data)
|
||||||
static void general_write_handler(const void *data)
|
static void general_write_handler(const void *data)
|
||||||
{
|
{
|
||||||
bool has_set_reinit = false;
|
bool has_set_reinit = false;
|
||||||
|
bool has_set_rewind = false;
|
||||||
const rarch_setting_t *setting = (const rarch_setting_t*)data;
|
const rarch_setting_t *setting = (const rarch_setting_t*)data;
|
||||||
|
|
||||||
if (!setting)
|
if (!setting)
|
||||||
|
@ -992,10 +993,7 @@ static void general_write_handler(const void *data)
|
||||||
else if (!strcmp(setting->name, "rewind_enable"))
|
else if (!strcmp(setting->name, "rewind_enable"))
|
||||||
{
|
{
|
||||||
g_settings.rewind_enable = *setting->value.boolean;
|
g_settings.rewind_enable = *setting->value.boolean;
|
||||||
if (g_settings.rewind_enable)
|
has_set_rewind = true;
|
||||||
rarch_init_rewind();
|
|
||||||
else
|
|
||||||
rarch_deinit_rewind();
|
|
||||||
}
|
}
|
||||||
else if (!strcmp(setting->name, "rewind_granularity"))
|
else if (!strcmp(setting->name, "rewind_granularity"))
|
||||||
g_settings.rewind_granularity = *setting->value.unsigned_integer;
|
g_settings.rewind_granularity = *setting->value.unsigned_integer;
|
||||||
|
@ -1341,6 +1339,9 @@ static void general_write_handler(const void *data)
|
||||||
|
|
||||||
if (has_set_reinit)
|
if (has_set_reinit)
|
||||||
rarch_main_command(RARCH_CMD_REINIT);
|
rarch_main_command(RARCH_CMD_REINIT);
|
||||||
|
|
||||||
|
if (has_set_rewind)
|
||||||
|
rarch_main_command(RARCH_CMD_REWIND);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define NEXT (list[index++])
|
#define NEXT (list[index++])
|
||||||
|
|
Loading…
Reference in New Issue