From 89b582c99a129718806756c1cd8f75167d9adaeb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean-Andr=C3=A9=20Santoni?= Date: Mon, 26 Jan 2015 22:00:59 +0100 Subject: [PATCH] (XMB) Fix a setting values display bug by using a more precise context --- menu/drivers/shared.h | 2 +- settings_data.c | 5 +++-- settings_data.h | 3 ++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/menu/drivers/shared.h b/menu/drivers/shared.h index 9ffec03f6a..4e3f84ccc7 100644 --- a/menu/drivers/shared.h +++ b/menu/drivers/shared.h @@ -279,7 +279,7 @@ static INLINE void disp_set_label(file_list_t* list, type - MENU_SETTINGS_CORE_OPTION_START), type_str_size); else - setting_data_get_label(type_str, + setting_data_get_label(list, type_str, type_str_size, w, type, label, entry_label, i); strlcpy(path_buf, path, path_buf_size); diff --git a/settings_data.c b/settings_data.c index 8897aef620..51eb8d2d59 100644 --- a/settings_data.c +++ b/settings_data.c @@ -2804,6 +2804,7 @@ static void get_string_representation_savestate(void * data, char *type_str, /** * setting_data_get_label: + * @list : File list on which to perform the search * @type_str : String for the type to be represented on-screen as * a label. * @type_str_size : Size of @type_str @@ -2816,7 +2817,7 @@ static void get_string_representation_savestate(void * data, char *type_str, * * Get associated label of a setting. **/ -void setting_data_get_label(char *type_str, +void setting_data_get_label(file_list_t* list, char *type_str, size_t type_str_size, unsigned *w, unsigned type, const char *menu_label, const char *label, unsigned idx) { @@ -2828,7 +2829,7 @@ void setting_data_get_label(char *type_str, setting_data = (rarch_setting_t*)driver.menu->list_settings; setting = (rarch_setting_t*)setting_data_find_setting(setting_data, - driver.menu->menu_list->selection_buf->list[idx].label); + list->list[idx].label); if ((get_fallback_label(type_str, type_str_size, w, type, menu_label, label, idx)) == 0) diff --git a/settings_data.h b/settings_data.h index 7b2e64a702..acf7b1afd0 100644 --- a/settings_data.h +++ b/settings_data.h @@ -292,6 +292,7 @@ int setting_data_get_description(const char *label, char *msg, #ifdef HAVE_MENU /** * setting_data_get_label: + * @list : File list on which to perform the search * @type_str : String for the type to be represented on-screen as * a label. * @type_str_size : Size of @type_str @@ -304,7 +305,7 @@ int setting_data_get_description(const char *label, char *msg, * * Get associated label of a setting. **/ -void setting_data_get_label(char *type_str, +void setting_data_get_label(file_list_t* list, char *type_str, size_t type_str_size, unsigned *w, unsigned type, const char *menu_label, const char *label, unsigned idx); #endif