From 74388d8490d05b26ac23a16aa57b1a5e3efc8f15 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Fri, 10 May 2019 18:05:58 +0200 Subject: [PATCH] Remove string_concat --- core_info.c | 6 +++--- gfx/common/dxgi_common.c | 6 +++--- gfx/drivers_context/wgl_ctx.c | 2 +- gfx/drivers_shader/shader_glsl.c | 2 +- gfx/video_driver.c | 13 +++++++------ gfx/video_shader_parse.c | 6 +++--- libretro-common/file/file_path.c | 2 +- libretro-common/include/string/stdstring.h | 8 -------- menu/cbs/menu_cbs_deferred_push.c | 4 ++-- menu/cbs/menu_cbs_title.c | 4 ++-- menu/drivers/xmb.c | 2 +- menu/menu_animation.c | 2 +- 12 files changed, 25 insertions(+), 32 deletions(-) diff --git a/core_info.c b/core_info.c index e16a4d4748..948f9df111 100644 --- a/core_info.c +++ b/core_info.c @@ -71,13 +71,13 @@ static void core_info_list_resolve_all_extensions( strlcat(core_info_list->all_ext, core_info_list->list[i].supported_extensions, all_ext_len); - string_concat(core_info_list->all_ext, "|"); + strlcat(core_info_list->all_ext, "|", all_ext_len); } #ifdef HAVE_7ZIP - string_concat(core_info_list->all_ext, "7z|"); + strlcat(core_info_list->all_ext, "7z|", all_ext_len); #endif #ifdef HAVE_ZLIB - string_concat(core_info_list->all_ext, "zip|"); + strlcat(core_info_list->all_ext, "zip|", ext_len); #endif } diff --git a/gfx/common/dxgi_common.c b/gfx/common/dxgi_common.c index 9d3295b484..abc67fba6d 100644 --- a/gfx/common/dxgi_common.c +++ b/gfx/common/dxgi_common.c @@ -311,16 +311,16 @@ void dxgi_update_title(video_frame_info_t* video_info) if (settings->bools.video_memory_show) { #ifndef __WINRT__ - uint64_t mem_bytes_used = frontend_driver_get_used_memory(); - uint64_t mem_bytes_total = frontend_driver_get_total_memory(); char mem[128]; + uint64_t mem_bytes_used = frontend_driver_get_used_memory(); + uint64_t mem_bytes_total = frontend_driver_get_total_memory(); mem[0] = '\0'; snprintf( mem, sizeof(mem), " || MEM: %.2f/%.2fMB", mem_bytes_used / (1024.0f * 1024.0f), mem_bytes_total / (1024.0f * 1024.0f)); - string_concat(video_info->fps_text, mem); + strlcat(video_info->fps_text, mem, sizeof(video_info->fps-text)); #endif } diff --git a/gfx/drivers_context/wgl_ctx.c b/gfx/drivers_context/wgl_ctx.c index 524a8da0f0..1eeb38e804 100644 --- a/gfx/drivers_context/wgl_ctx.c +++ b/gfx/drivers_context/wgl_ctx.c @@ -497,7 +497,7 @@ static void gfx_ctx_wgl_update_title(void *data, void *data2) snprintf( mem, sizeof(mem), " || MEM: %.2f/%.2fMB", mem_bytes_used / (1024.0f * 1024.0f), mem_bytes_total / (1024.0f * 1024.0f)); - string_concat(video_info->fps_text, mem); + strlcat(video_info->fps_text, mem, sizeof(video_info->fps_text)); #endif } diff --git a/gfx/drivers_shader/shader_glsl.c b/gfx/drivers_shader/shader_glsl.c index 95cc32ebc7..3550074eae 100644 --- a/gfx/drivers_shader/shader_glsl.c +++ b/gfx/drivers_shader/shader_glsl.c @@ -977,7 +977,7 @@ static void *gl_glsl_init(void *data, const char *path) snprintf(define, sizeof(define), "#define %s_ALIAS\n", glsl->shader->pass[i].alias); - string_concat(glsl->alias_define, define); + strlcat(glsl->alias_define, define, sizeof(glsl->alias_define)); } } diff --git a/gfx/video_driver.c b/gfx/video_driver.c index a0d31e8036..54a9a71f38 100644 --- a/gfx/video_driver.c +++ b/gfx/video_driver.c @@ -2152,7 +2152,8 @@ void video_driver_set_title_buf(void) " ", info.library_name, sizeof(video_driver_title_buf)); - string_concat(video_driver_title_buf, " "); + strlcat(video_driver_title_buf, " ", + sizeof(video_driver_title_buf)); strlcat(video_driver_title_buf, info.library_version, sizeof(video_driver_title_buf)); } @@ -2323,7 +2324,7 @@ void video_driver_frame(const void *data, unsigned width, snprintf(video_info.fps_text, sizeof(video_info.fps_text), "FPS: %6.1f", last_fps); if (video_info.framecount_show) - string_concat(video_info.fps_text, " || "); + strlcat(video_info.fps_text, " || ", sizeof(video_info.fps_text)); } if (video_info.framecount_show) @@ -2333,7 +2334,7 @@ void video_driver_frame(const void *data, unsigned width, sizeof(frames_text), "%s: %" PRIu64, msg_hash_to_str(MSG_FRAMES), (uint64_t)video_driver_frame_count); - string_concat(video_info.fps_text, frames_text); + strlcat(video_info.fps_text, frames_text, sizeof(video_info.fps_text)); } if ((video_driver_frame_count % FPS_UPDATE_INTERVAL) == 0) @@ -2344,9 +2345,9 @@ void video_driver_frame(const void *data, unsigned width, if (!string_is_empty(video_info.fps_text)) { - string_concat(video_driver_window_title, "|| "); - string_concat(video_driver_window_title, - video_info.fps_text); + strlcat(video_driver_window_title, "|| ", sizeof(video_driver_window_title)); + strlcat(video_driver_window_title, + video_info.fps_text, sizeof(video_driver_window_title)); } curr_time = new_time; diff --git a/gfx/video_shader_parse.c b/gfx/video_shader_parse.c index 1259434ac1..75c8d4276c 100644 --- a/gfx/video_shader_parse.c +++ b/gfx/video_shader_parse.c @@ -1025,7 +1025,7 @@ void video_shader_write_conf_cgp(config_file_t *conf, for (i = 1; i < shader->num_parameters; i++) { /* O(n^2), but number of parameters is very limited. */ - string_concat(parameters, ";"); + strlcat(parameters, ";", param_size); strlcat(parameters, shader->parameters[i].id, param_size); } @@ -1052,7 +1052,7 @@ void video_shader_write_conf_cgp(config_file_t *conf, for (i = 1; i < shader->luts; i++) { /* O(n^2), but number of textures is very limited. */ - string_concat(textures, ";"); + strlcat(textures, ";", tex_size); strlcat(textures, shader->lut[i].id, tex_size); } @@ -1106,7 +1106,7 @@ void video_shader_write_conf_cgp(config_file_t *conf, for (i = 1; i < shader->variables; i++) { - string_concat(variables, ";"); + strlcat(variables, ";", var_tmp); strlcat(variables, shader->variable[i].id, var_tmp); } diff --git a/libretro-common/file/file_path.c b/libretro-common/file/file_path.c index b412fd8d44..bf3a280d19 100644 --- a/libretro-common/file/file_path.c +++ b/libretro-common/file/file_path.c @@ -439,7 +439,7 @@ void fill_pathname_slash(char *path, size_t size) join_str[0] = '\0'; strlcpy(join_str, last_slash, sizeof(join_str)); - string_concat(path, join_str); + strlcat(path, join_str, size); } } diff --git a/libretro-common/include/string/stdstring.h b/libretro-common/include/string/stdstring.h index c5635ac4fe..74c9bdc15c 100644 --- a/libretro-common/include/string/stdstring.h +++ b/libretro-common/include/string/stdstring.h @@ -45,14 +45,6 @@ static INLINE bool string_is_equal(const char *a, const char *b) return (a && b) ? !strcmp(a, b) : false; } -static INLINE char *string_concat(char *dst, char *src) -{ - while (*dst) - dst++; - while ((*(dst)++ = *(src)++)); - return --dst; -} - #define STRLEN_CONST(x) ((sizeof((x))-1)) #define string_is_not_equal(a, b) !string_is_equal((a), (b)) diff --git a/menu/cbs/menu_cbs_deferred_push.c b/menu/cbs/menu_cbs_deferred_push.c index 850238c2fa..e001f34da0 100644 --- a/menu/cbs/menu_cbs_deferred_push.c +++ b/menu/cbs/menu_cbs_deferred_push.c @@ -570,7 +570,7 @@ static int general_push(menu_displaylist_info_t *info, #elif defined(HAVE_MPV) libretro_mpv_retro_get_system_info(&sysinfo); #endif - string_concat(newstring2, "|"); + strlcat(newstring2, "|", PATH_MAX_LENGTH * sizeof(char)); strlcat(newstring2, sysinfo.valid_extensions, PATH_MAX_LENGTH * sizeof(char)); } @@ -579,7 +579,7 @@ static int general_push(menu_displaylist_info_t *info, if (settings->bools.multimedia_builtin_imageviewer_enable) { libretro_imageviewer_retro_get_system_info(&sysinfo); - string_concat(newstring2, "|"); + strlcat(newstring2, "|", PATH_MAX_LENGTH * sizeof(char)); strlcat(newstring2, sysinfo.valid_extensions, PATH_MAX_LENGTH * sizeof(char)); } diff --git a/menu/cbs/menu_cbs_title.c b/menu/cbs/menu_cbs_title.c index 6ebc9edb63..57cbd97320 100644 --- a/menu/cbs/menu_cbs_title.c +++ b/menu/cbs/menu_cbs_title.c @@ -335,8 +335,8 @@ static int action_get_title_group_settings(const char *path, const char *label, if (!string_is_empty(elem1)) { - string_concat(s, " - "); - string_concat(s, elem1); + strlcat(s, " - ", len); + strlcat(s, elem1, len); } } diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index 8be19d2975..271ba2af9a 100644 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -1969,7 +1969,7 @@ static void xmb_context_reset_horizontal_list( if (!filestream_exists(content_texturepath)) { - string_concat(iconpath, "default"); + strlcat(iconpath, "default", PATH_MAX_LENGTH * sizeof(char)); fill_pathname_join_delim(content_texturepath, iconpath, file_path_str(FILE_PATH_CONTENT_BASENAME), '-', PATH_MAX_LENGTH * sizeof(char)); diff --git a/menu/menu_animation.c b/menu/menu_animation.c index 36ddddd1a5..755624d543 100644 --- a/menu/menu_animation.c +++ b/menu/menu_animation.c @@ -680,7 +680,7 @@ bool menu_animation_ticker(menu_animation_ctx_ticker_t *ticker) if (!ticker->selected) { utf8cpy(ticker->s, PATH_MAX_LENGTH, ticker->str, ticker->len - 3); - string_concat(ticker->s, "..."); + strlcat(ticker->s, "...", PATH_MAX_LENGTH); return false; }