about summary refs log tree commit diff stats
path: root/src/pgp
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/pgp
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/pgp')
-rw-r--r--src/pgp/gpg.c21
1 files changed, 3 insertions, 18 deletions
diff --git a/src/pgp/gpg.c b/src/pgp/gpg.c
index e4aa9943..8762660d 100644
--- a/src/pgp/gpg.c
+++ b/src/pgp/gpg.c
@@ -100,8 +100,7 @@ _p_gpg_passphrase_cb(void* hook, const char* uid_hint, const char* passphrase_in
         if (passphrase_attempt) {
             free(passphrase_attempt);
         }
-        passphrase_attempt = pass_term->str;
-        g_string_free(pass_term, FALSE);
+        passphrase_attempt = g_string_free(pass_term, FALSE);
 
         gpgme_io_write(fd, passphrase_attempt, strlen(passphrase_attempt));
     }
@@ -768,10 +767,7 @@ p_gpg_format_fp_str(char* fp)
         }
     }
 
-    char* result = format->str;
-    g_string_free(format, FALSE);
-
-    return result;
+    return g_string_free(format, FALSE);
 }
 
 static char*
@@ -801,18 +797,7 @@ _remove_header_footer(char* str, const char* const footer)
 static char*
 _add_header_footer(const char* const str, const char* const header, const char* const footer)
 {
-    GString* result_str = g_string_new("");
-
-    g_string_append(result_str, header);
-    g_string_append(result_str, "\n\n");
-    g_string_append(result_str, str);
-    g_string_append(result_str, "\n");
-    g_string_append(result_str, footer);
-
-    char* result = result_str->str;
-    g_string_free(result_str, FALSE);
-
-    return result;
+    return g_strdup_printf("%s\n\n%s\n%s", header, str, footer);
 }
 
 static void