about summary refs log tree commit diff stats
path: root/src/ui
diff options
context:
space:
mode:
authorMichael Vetter <jubalh@iodoru.org>2023-03-17 23:58:33 +0100
committerMichael Vetter <jubalh@iodoru.org>2023-03-21 10:53:10 +0100
commite59c401c840f379e64945734969db03b0e55ef22 (patch)
treea6a643a8a308c098a923931e02b0b8dfaf61c128 /src/ui
parente5e8ff221a08939b43edf488fa2a3b8fe95169ea (diff)
downloadprofani-tty-e59c401c840f379e64945734969db03b0e55ef22.tar.gz
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.
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/confwin.c11
-rw-r--r--src/ui/console.c4
-rw-r--r--src/ui/privwin.c5
-rw-r--r--src/ui/window.c16
4 files changed, 7 insertions, 29 deletions
diff --git a/src/ui/confwin.c b/src/ui/confwin.c
index 6c8b98c7..d74c6d86 100644
--- a/src/ui/confwin.c
+++ b/src/ui/confwin.c
@@ -340,14 +340,5 @@ confwin_get_string(ProfConfWin* confwin)
 {
     assert(confwin != NULL);
 
-    GString* res = g_string_new("");
-
-    char* title = win_get_title((ProfWin*)confwin);
-    g_string_append(res, title);
-    free(title);
-
-    char* resstr = res->str;
-    g_string_free(res, FALSE);
-
-    return resstr;
+    return win_get_title((ProfWin*)confwin);
 }
diff --git a/src/ui/console.c b/src/ui/console.c
index bab8e17c..270c5943 100644
--- a/src/ui/console.c
+++ b/src/ui/console.c
@@ -310,9 +310,7 @@ _room_triggers_to_string(GList* triggers)
         }
     }
 
-    char* result = triggers_str->str;
-    g_string_free(triggers_str, FALSE);
-    return result;
+    return g_string_free(triggers_str, FALSE);
 }
 
 void
diff --git a/src/ui/privwin.c b/src/ui/privwin.c
index 3f095404..7954a92f 100644
--- a/src/ui/privwin.c
+++ b/src/ui/privwin.c
@@ -286,8 +286,5 @@ privwin_get_string(ProfPrivateWin* privwin)
         g_string_append_printf(res, ", %d unread", privwin->unread);
     }
 
-    char* resstr = res->str;
-    g_string_free(res, FALSE);
-
-    return resstr;
+    return g_string_free(res, FALSE);
 }
diff --git a/src/ui/window.c b/src/ui/window.c
index 064069c7..2534dddb 100644
--- a/src/ui/window.c
+++ b/src/ui/window.c
@@ -337,9 +337,7 @@ win_get_title(ProfWin* window)
             g_string_append(title, mucwin->roomjid);
         }
 
-        char* title_str = title->str;
-        g_string_free(title, FALSE);
-        return title_str;
+        return g_string_free(title, FALSE);
     }
     if (window->type == WIN_CONFIG) {
         ProfConfWin* confwin = (ProfConfWin*)window;
@@ -349,9 +347,7 @@ win_get_title(ProfWin* window)
         if (confwin->form->modified) {
             g_string_append(title, " *");
         }
-        char* title_str = title->str;
-        g_string_free(title, FALSE);
-        return title_str;
+        return g_string_free(title, FALSE);
     }
     if (window->type == WIN_PRIVATE) {
         ProfPrivateWin* privatewin = (ProfPrivateWin*)window;
@@ -500,9 +496,7 @@ win_to_string(ProfWin* window)
         ProfPluginWin* pluginwin = (ProfPluginWin*)window;
         GString* gstring = g_string_new("");
         g_string_append_printf(gstring, "Plugin: %s", pluginwin->tag);
-        char* res = gstring->str;
-        g_string_free(gstring, FALSE);
-        return res;
+        return g_string_free(gstring, FALSE);
     }
     case WIN_VCARD:
     {
@@ -2320,7 +2314,5 @@ win_quote_autocomplete(ProfWin* window, const char* const input, gboolean previo
     g_free(quoted_result);
     g_strfreev(parts);
 
-    result = replace_with->str;
-    g_string_free(replace_with, FALSE);
-    return result;
+    return g_string_free(replace_with, FALSE);
 }