mirror of
https://github.com/libretro/RetroArch
synced 2025-04-02 16:20:39 +00:00
Cleanup config_save_file
This commit is contained in:
parent
7863b3a21f
commit
e24f58361c
@ -2929,6 +2929,8 @@ bool config_save_file(const char *path)
|
|||||||
path_settings_size = populate_settings_path (settings, &path_settings);
|
path_settings_size = populate_settings_path (settings, &path_settings);
|
||||||
|
|
||||||
/* Path settings */
|
/* Path settings */
|
||||||
|
if (path_settings && (path_settings_size > 0))
|
||||||
|
{
|
||||||
for (i = 0; i < (unsigned)path_settings_size; i++)
|
for (i = 0; i < (unsigned)path_settings_size; i++)
|
||||||
{
|
{
|
||||||
const char *value = path_settings[i].ptr;
|
const char *value = path_settings[i].ptr;
|
||||||
@ -2939,26 +2941,47 @@ bool config_save_file(const char *path)
|
|||||||
config_set_path(conf, path_settings[i].ident, value);
|
config_set_path(conf, path_settings[i].ident, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
free(path_settings);
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef HAVE_MENU
|
#ifdef HAVE_MENU
|
||||||
config_set_path(conf, "xmb_font",
|
config_set_path(conf, "xmb_font",
|
||||||
!string_is_empty(settings->menu.xmb.font) ? settings->menu.xmb.font : "");
|
!string_is_empty(settings->menu.xmb.font) ? settings->menu.xmb.font : "");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* String settings */
|
/* String settings */
|
||||||
|
if (array_settings && (array_settings_size > 0))
|
||||||
|
{
|
||||||
for (i = 0; i < (unsigned)array_settings_size; i++)
|
for (i = 0; i < (unsigned)array_settings_size; i++)
|
||||||
config_set_string(conf, array_settings[i].ident,
|
config_set_string(conf,
|
||||||
|
array_settings[i].ident,
|
||||||
array_settings[i].ptr);
|
array_settings[i].ptr);
|
||||||
|
|
||||||
|
free(array_settings);
|
||||||
|
}
|
||||||
|
|
||||||
/* Float settings */
|
/* Float settings */
|
||||||
|
if (float_settings && (float_settings_size > 0))
|
||||||
|
{
|
||||||
for (i = 0; i < (unsigned)float_settings_size; i++)
|
for (i = 0; i < (unsigned)float_settings_size; i++)
|
||||||
config_set_float(conf, float_settings[i].ident,
|
config_set_float(conf,
|
||||||
|
float_settings[i].ident,
|
||||||
*float_settings[i].ptr);
|
*float_settings[i].ptr);
|
||||||
|
|
||||||
|
free(float_settings);
|
||||||
|
}
|
||||||
|
|
||||||
/* Integer settings */
|
/* Integer settings */
|
||||||
|
if (int_settings && (int_settings_size > 0))
|
||||||
|
{
|
||||||
for (i = 0; i < (unsigned)int_settings_size; i++)
|
for (i = 0; i < (unsigned)int_settings_size; i++)
|
||||||
config_set_int(conf, int_settings[i].ident,
|
config_set_int(conf,
|
||||||
|
int_settings[i].ident,
|
||||||
*int_settings[i].ptr);
|
*int_settings[i].ptr);
|
||||||
|
|
||||||
|
free(int_settings);
|
||||||
|
}
|
||||||
|
|
||||||
for (i = 0; i < MAX_USERS; i++)
|
for (i = 0; i < MAX_USERS; i++)
|
||||||
{
|
{
|
||||||
char cfg[64];
|
char cfg[64];
|
||||||
@ -2976,10 +2999,15 @@ bool config_save_file(const char *path)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Boolean settings */
|
/* Boolean settings */
|
||||||
|
if (bool_settings && (bool_settings_size > 0))
|
||||||
|
{
|
||||||
for (i = 0; i < (unsigned)bool_settings_size; i++)
|
for (i = 0; i < (unsigned)bool_settings_size; i++)
|
||||||
config_set_bool(conf, bool_settings[i].ident,
|
config_set_bool(conf, bool_settings[i].ident,
|
||||||
*bool_settings[i].ptr);
|
*bool_settings[i].ptr);
|
||||||
|
|
||||||
|
free(bool_settings);
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef HAVE_NETWORKGAMEPAD
|
#ifdef HAVE_NETWORKGAMEPAD
|
||||||
for (i = 0; i < MAX_USERS; i++)
|
for (i = 0; i < MAX_USERS; i++)
|
||||||
{
|
{
|
||||||
@ -3036,17 +3064,6 @@ bool config_save_file(const char *path)
|
|||||||
ret = config_file_write(conf, path);
|
ret = config_file_write(conf, path);
|
||||||
config_file_free(conf);
|
config_file_free(conf);
|
||||||
|
|
||||||
if (bool_settings)
|
|
||||||
free(bool_settings);
|
|
||||||
if (int_settings)
|
|
||||||
free(int_settings);
|
|
||||||
if (float_settings)
|
|
||||||
free(float_settings);
|
|
||||||
if (array_settings)
|
|
||||||
free(array_settings);
|
|
||||||
if (path_settings)
|
|
||||||
free(path_settings);
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user