From a62f8f6f75279396e218204a6ee8d58bd0b6995b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Helleu?= Date: Fri, 28 Jan 2022 07:03:44 +0100 Subject: [PATCH] core: use dynamic string in function gui_chat_build_string_prefix_message --- src/gui/gui-chat.c | 38 +++++++++++--------------------------- 1 file changed, 11 insertions(+), 27 deletions(-) diff --git a/src/gui/gui-chat.c b/src/gui/gui-chat.c index e8838b72c..9cecf6121 100644 --- a/src/gui/gui-chat.c +++ b/src/gui/gui-chat.c @@ -588,39 +588,23 @@ gui_chat_change_time_format () char * gui_chat_build_string_prefix_message (struct t_gui_line *line) { - char *string, *string_without_colors; - int length; + char **string, *string_without_colors; + + string = string_dyn_alloc (256); + if (!string) + return NULL; - length = 0; if (line->data->prefix) - length += strlen (line->data->prefix); - length++; + string_dyn_concat (string, line->data->prefix, -1); + string_dyn_concat (string, "\t", -1); if (line->data->message) - length += strlen (line->data->message); - length++; + string_dyn_concat (string, line->data->message, -1); - string = malloc (length); - if (string) - { - string[0] = '\0'; - if (line->data->prefix) - strcat (string, line->data->prefix); - strcat (string, "\t"); - if (line->data->message) - strcat (string, line->data->message); - } + string_without_colors = gui_color_decode (*string, NULL); - if (string) - { - string_without_colors = gui_color_decode (string, NULL); - if (string_without_colors) - { - free (string); - string = string_without_colors; - } - } + string_dyn_free (string, 1); - return string; + return string_without_colors; } /*