Adapt to g_string_free glib 2.75.3 change

glib 2.75.3 changes warning behaviour of `g_string_free()`.
See:
* https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3219
* https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3226

Use this opportunity to replace the use of GString with
`g_strdup_printf()` where possible.
Otherwise correctly take the return value of `g_string_free()`
which is nicer anyways.
This commit is contained in:
Michael Vetter
2023-03-17 23:58:33 +01:00
parent e5e8ff221a
commit e59c401c84
17 changed files with 44 additions and 147 deletions

View File

@@ -214,22 +214,18 @@ p_contact_name_or_jid(const PContact contact)
char*
p_contact_create_display_string(const PContact contact, const char* const resource)
{
GString* result_str = g_string_new("");
gchar* result;
// use nickname if exists
const char* display_name = p_contact_name_or_jid(contact);
g_string_append(result_str, display_name);
// add resource if not default provided by profanity
if (strcmp(resource, "__prof_default") != 0) {
g_string_append(result_str, " (");
g_string_append(result_str, resource);
g_string_append(result_str, ")");
result = g_strdup_printf("%s (%s)", display_name, resource);
} else {
result = g_strdup_printf("%s", display_name);
}
char* result = result_str->str;
g_string_free(result_str, FALSE);
return result;
}