about summary refs log tree commit diff stats
path: root/src/tools
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/tools
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/tools')
-rw-r--r--src/tools/autocomplete.c7
-rw-r--r--src/tools/parser.c6
2 files changed, 2 insertions, 11 deletions
diff --git a/src/tools/autocomplete.c b/src/tools/autocomplete.c
index 461c2b40..227b79e0 100644
--- a/src/tools/autocomplete.c
+++ b/src/tools/autocomplete.c
@@ -314,7 +314,6 @@ autocomplete_complete(Autocomplete ac, const gchar* search_str, gboolean quote,
 static char*
 _autocomplete_param_common(const char* const input, char* command, autocomplete_func func, Autocomplete ac, gboolean quote, gboolean previous, void* context)
 {
-    GString* auto_msg;
     char* command_cpy;
     char* result = NULL;
     int len;
@@ -344,11 +343,7 @@ _autocomplete_param_common(const char* const input, char* command, autocomplete_
         }
 
         if (found) {
-            auto_msg = g_string_new(command_cpy);
-            g_string_append(auto_msg, found);
-            free(found);
-            result = auto_msg->str;
-            g_string_free(auto_msg, FALSE);
+            result = g_strdup_printf("%s%s", command_cpy, found);
         }
     }
     free(command_cpy);
diff --git a/src/tools/parser.c b/src/tools/parser.c
index 30c1961f..93c765f5 100644
--- a/src/tools/parser.c
+++ b/src/tools/parser.c
@@ -295,7 +295,6 @@ get_start(const char* const string, int tokens)
     GString* result = g_string_new("");
     int length = g_utf8_strlen(string, -1);
     gboolean in_quotes = FALSE;
-    char* result_str = NULL;
     int num_tokens = 0;
 
     // include first token
@@ -325,10 +324,7 @@ get_start(const char* const string, int tokens)
         }
     }
 
-    result_str = result->str;
-    g_string_free(result, FALSE);
-
-    return result_str;
+    return g_string_free(result, FALSE);
 }
 
 GHashTable*