From ae1c26cbc468c2330dc8fe89c5ebe18c69555304 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Fri, 28 Apr 2017 00:00:43 +0200 Subject: [PATCH] Restructure settings struct --- configuration.c | 6 +++--- configuration.h | 7 ++++++- menu/menu_driver.c | 2 +- menu/widgets/menu_dialog.c | 6 +++--- 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/configuration.c b/configuration.c index 0374635dba..c24682ba1c 100644 --- a/configuration.c +++ b/configuration.c @@ -1003,6 +1003,9 @@ static struct config_int_setting *populate_settings_int(settings_t *settings, in static void config_set_defaults(void) { unsigned i, j; +#ifdef HAVE_MENU + static bool first_initialized = true; +#endif int float_settings_size = 0; int bool_settings_size = 0; int int_settings_size = 0; @@ -1022,9 +1025,6 @@ static void config_set_defaults(void) struct config_bool_setting *bool_settings = NULL; struct config_float_setting *float_settings = NULL; struct config_int_setting *int_settings = NULL; -#ifdef HAVE_MENU - static bool first_initialized = true; -#endif float_settings = populate_settings_float (settings, &float_settings_size); bool_settings = populate_settings_bool (settings, &bool_settings_size); int_settings = populate_settings_int (settings, &int_settings_size); diff --git a/configuration.h b/configuration.h index 475cfd7c33..baab11fef7 100644 --- a/configuration.h +++ b/configuration.h @@ -42,6 +42,12 @@ RETRO_BEGIN_DECLS typedef struct settings { + struct + { + bool placeholder; + bool bundle_finished; + } bools; + bool modified; video_viewport_t video_viewport_custom; @@ -49,7 +55,6 @@ typedef struct settings char playlist_names[PATH_MAX_LENGTH]; char playlist_cores[PATH_MAX_LENGTH]; - bool bundle_finished; struct { diff --git a/menu/menu_driver.c b/menu/menu_driver.c index 50d1b0aa00..c8e23edf0f 100644 --- a/menu/menu_driver.c +++ b/menu/menu_driver.c @@ -163,7 +163,7 @@ static void bundle_decompressed(void *task_data, settings->bundle_assets_extract_last_version = settings->bundle_assets_extract_version_current; - configuration_set_bool(settings, settings->bundle_finished, true); + configuration_set_bool(settings, settings->bools.bundle_finished, true); command_event(CMD_EVENT_MENU_SAVE_CURRENT_CONFIG, NULL); } diff --git a/menu/widgets/menu_dialog.c b/menu/widgets/menu_dialog.c index 2912e85eef..4ebeb1bbc2 100644 --- a/menu/widgets/menu_dialog.c +++ b/menu/widgets/menu_dialog.c @@ -208,10 +208,10 @@ int menu_dialog_iterate(char *s, size_t len, const char *label) menu_hash_get_help_enum(MENU_ENUM_LABEL_VALUE_EXTRACTING_PLEASE_WAIT, s, len); - if (settings->bundle_finished) + if (settings->bools.bundle_finished) { - settings->bundle_finished = false; - do_exit = true; + settings->bools.bundle_finished = false; + do_exit = true; } break; case MENU_DIALOG_QUIT_CONFIRM: