From 90e0d0bb7079ec9159fc471a04fccc8af059cd7c Mon Sep 17 00:00:00 2001 From: LibretroAdmin Date: Fri, 19 Aug 2022 10:37:32 +0200 Subject: [PATCH] (core_option_manager.c) Some simplifications --- core_option_manager.c | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/core_option_manager.c b/core_option_manager.c index f7495a2fee..401df2549c 100644 --- a/core_option_manager.c +++ b/core_option_manager.c @@ -27,9 +27,6 @@ #include "core_option_manager.h" #include "msg_hash.h" -#define CORE_OPTION_MANAGER_MAP_TAG "#" -#define CORE_OPTION_MANAGER_MAP_DELIM ":" - /*********************/ /* Option Conversion */ /*********************/ @@ -861,7 +858,8 @@ core_option_manager_t *core_option_manager_new_vars( * the map */ char address[256]; - address[0] = '\0'; + address[0] = '#'; + address[1] = '\0'; /* Address string is normally: * @@ -871,8 +869,7 @@ core_option_manager_t *core_option_manager_new_vars( * so we could just set the address to * - but for consistency with * 'modern' options, we apply the tag regardless */ - snprintf(address, sizeof(address), - CORE_OPTION_MANAGER_MAP_TAG "%s", var->key); + strlcat(address, var->key, sizeof(address)); if (!nested_list_add_item(opt->option_map, address, NULL, (const void*)&opt->opts[size])) @@ -933,7 +930,7 @@ static bool core_option_manager_parse_option( * character */ if (opt->cats && !string_is_empty(category_key) && - !strstr(category_key, CORE_OPTION_MANAGER_MAP_DELIM)) + !strstr(category_key, ":")) { for (i = 0; i < opt->cats_size; i++) { @@ -964,7 +961,7 @@ static bool core_option_manager_parse_option( /* If option has a category, option key * cannot contain a map delimiter character */ if (!string_is_empty(option->category_key) && - strstr(key, CORE_OPTION_MANAGER_MAP_DELIM)) + strstr(key, ":")) return false; option->key = strdup(key); @@ -1193,7 +1190,6 @@ core_option_manager_t *core_option_manager_new( const char *category_key = opt->opts[size].category_key; char address[256]; - address[0] = '\0'; /* Address string is nominally: * @@ -1201,15 +1197,21 @@ core_option_manager_t *core_option_manager_new( * key in order to avoid category/option key * collisions */ if (string_is_empty(category_key)) - snprintf(address, sizeof(address), - CORE_OPTION_MANAGER_MAP_TAG "%s", option_def->key); + { + address[0] = '#'; + address[1] = '\0'; + strlcat(address, option_def->key, sizeof(address)); + } else + { + address[0] = '\0'; snprintf(address, sizeof(address), - "%s" CORE_OPTION_MANAGER_MAP_DELIM CORE_OPTION_MANAGER_MAP_TAG "%s", + "%s#%s", category_key, option_def->key); + } if (!nested_list_add_item(opt->option_map, - address, CORE_OPTION_MANAGER_MAP_DELIM, + address, ":", (const void*)&opt->opts[size])) goto error; }