diff --git a/libretro-db/Makefile b/libretro-db/Makefile index 1a8824662c..6960cf1478 100644 --- a/libretro-db/Makefile +++ b/libretro-db/Makefile @@ -13,7 +13,10 @@ endif LIBRETRO_COMMON_C = \ $(LIBRETRO_COMM_DIR)/streams/file_stream.c \ - $(LIBRETRO_COMM_DIR)/vfs/vfs_implementation.c + $(LIBRETRO_COMM_DIR)/vfs/vfs_implementation.c \ + $(LIBRETRO_COMM_DIR)/encodings/encoding_utf.c \ + $(LIBRETRO_COMM_DIR)/compat/compat_strl.c \ + $(LIBRETRO_COMM_DIR)/compat/fopen_utf8.c C_CONVERTER_C = \ $(LIBRETRODB_DIR)/rmsgpack.c \ @@ -25,9 +28,7 @@ C_CONVERTER_C = \ $(LIBRETRO_COMM_DIR)/hash/rhash.c \ $(LIBRETRO_COMM_DIR)/compat/compat_fnmatch.c \ $(LIBRETRO_COMM_DIR)/string/stdstring.c \ - $(LIBRETRO_COMM_DIR)/encodings/encoding_utf.c \ - $(LIBRETRO_COMMON_C) \ - $(LIBRETRO_COMM_DIR)/compat/compat_strl.c + $(LIBRETRO_COMMON_C) C_CONVERTER_OBJS := $(C_CONVERTER_C:.c=.o) @@ -40,9 +41,7 @@ RARCHDB_TOOL_C = \ $(LIBRETRODB_DIR)/libretrodb.c \ $(LIBRETRO_COMM_DIR)/compat/compat_fnmatch.c \ $(LIBRETRO_COMM_DIR)/string/stdstring.c \ - $(LIBRETRO_COMM_DIR)/encodings/encoding_utf.c \ - $(LIBRETRO_COMMON_C) \ - $(LIBRETRO_COMM_DIR)/compat/compat_strl.c + $(LIBRETRO_COMMON_C) RARCHDB_TOOL_OBJS := $(RARCHDB_TOOL_C:.c=.o) diff --git a/menu/drivers/ozone.c b/menu/drivers/ozone.c index f0d95b611a..ac4acce042 100644 --- a/menu/drivers/ozone.c +++ b/menu/drivers/ozone.c @@ -1618,20 +1618,24 @@ static void ozone_context_reset_horizontal_list(ozone_handle_t *ozone) malloc(PATH_MAX_LENGTH * sizeof(char)); char *content_texturepath = (char*) malloc(PATH_MAX_LENGTH * sizeof(char)); + char *icons_path = (char*) + malloc(PATH_MAX_LENGTH * sizeof(char)); + + strlcpy(icons_path, ozone->icons_path, PATH_MAX_LENGTH * sizeof(char)); sysname[0] = texturepath[0] = content_texturepath[0] = '\0'; fill_pathname_base_noext(sysname, path, PATH_MAX_LENGTH * sizeof(char)); - fill_pathname_join_concat(texturepath, ozone->icons_path, sysname, + fill_pathname_join_concat(texturepath, icons_path, sysname, file_path_str(FILE_PATH_PNG_EXTENSION), PATH_MAX_LENGTH * sizeof(char)); /* If the playlist icon doesn't exist return default */ if (!filestream_exists(texturepath)) - fill_pathname_join_concat(texturepath, ozone->icons_path, "default", + fill_pathname_join_concat(texturepath, icons_path, "default", file_path_str(FILE_PATH_PNG_EXTENSION), PATH_MAX_LENGTH * sizeof(char)); @@ -1655,7 +1659,7 @@ static void ozone_context_reset_horizontal_list(ozone_handle_t *ozone) fill_pathname_join_delim(sysname, sysname, file_path_str(FILE_PATH_CONTENT_BASENAME), '-', PATH_MAX_LENGTH * sizeof(char)); - strlcat(content_texturepath, ozone->icons_path, PATH_MAX_LENGTH * sizeof(char)); + strlcat(content_texturepath, icons_path, PATH_MAX_LENGTH * sizeof(char)); strlcat(content_texturepath, path_default_slash(), PATH_MAX_LENGTH * sizeof(char)); strlcat(content_texturepath, sysname, PATH_MAX_LENGTH * sizeof(char)); @@ -1663,8 +1667,9 @@ static void ozone_context_reset_horizontal_list(ozone_handle_t *ozone) /* If the content icon doesn't exist return default-content */ if (!filestream_exists(content_texturepath)) { - strlcat(ozone->icons_path, "default", PATH_MAX_LENGTH * sizeof(char)); - fill_pathname_join_delim(content_texturepath, ozone->icons_path, + strlcat(icons_path, path_default_slash(), PATH_MAX_LENGTH * sizeof(char)); + strlcat(icons_path, "default", PATH_MAX_LENGTH * sizeof(char)); + fill_pathname_join_delim(content_texturepath, icons_path, file_path_str(FILE_PATH_CONTENT_BASENAME), '-', PATH_MAX_LENGTH * sizeof(char)); } @@ -1718,6 +1723,7 @@ static void ozone_context_reset_horizontal_list(ozone_handle_t *ozone) free(sysname); free(texturepath); free(content_texturepath); + free(icons_path); } } } @@ -3324,7 +3330,7 @@ border_iterate: /* Console specific icons */ if (entry.type == FILE_TYPE_RPL_ENTRY && ozone->horizontal_list && ozone->categories_selection_ptr > ozone->system_tab_end) { - ozone_node_t *sidebar_node = (ozone_node_t*) file_list_get_userdata_at_offset(ozone->horizontal_list, ozone->categories_selection_ptr - ozone->system_tab_end); + ozone_node_t *sidebar_node = (ozone_node_t*) file_list_get_userdata_at_offset(ozone->horizontal_list, ozone->categories_selection_ptr - ozone->system_tab_end-1); if (!sidebar_node || !sidebar_node->content_icon) texture = ozone->icons_textures[icon];