Change char->free to auto_char char for autocleanup

Replace `gchar` and `g_free` to `auto_gchar`
Correct certain  `char` functions/variables to `gchar`

Related to #1819.

Edited by @jubalh.
This commit is contained in:
John Hernandez
2023-07-11 13:23:58 +02:00
parent 245d69deb6
commit e1d137f4e6
62 changed files with 498 additions and 969 deletions

View File

@@ -100,7 +100,7 @@ avatar_pep_subscribe(void)
gboolean
avatar_set(const char* path)
{
char* expanded_path = get_expanded_path(path);
auto_char char* expanded_path = get_expanded_path(path);
GError* err = NULL;
GdkPixbuf* pixbuf = gdk_pixbuf_new_from_file(expanded_path, &err);
@@ -109,7 +109,6 @@ avatar_set(const char* path)
cons_show_error("An error occurred while opening %s: %s.", expanded_path, err ? err->message : "No error message given");
return FALSE;
}
free(expanded_path);
// Scale img
int w = gdk_pixbuf_get_width(pixbuf);
@@ -127,7 +126,7 @@ avatar_set(const char* path)
pixbuf = new_pixbuf;
}
gchar* img_data;
auto_gchar gchar* img_data;
gsize len = -1;
if (!gdk_pixbuf_save_to_buffer(pixbuf, &img_data, &len, "png", &err, NULL)) {
@@ -141,7 +140,6 @@ avatar_set(const char* path)
xmpp_stanza_release(iq);
iq = stanza_create_avatar_metadata_publish_iq(ctx, img_data, len, gdk_pixbuf_get_height(pixbuf), gdk_pixbuf_get_width(pixbuf));
free(img_data);
g_object_unref(pixbuf);
iq_send_stanza(iq);
xmpp_stanza_release(iq);
@@ -252,13 +250,11 @@ _avatar_request_item_by_id(const char* jid, avatar_metadata* data)
xmpp_ctx_t* const ctx = connection_get_ctx();
char* uid = connection_create_stanza_id();
auto_char char* uid = connection_create_stanza_id();
xmpp_stanza_t* iq = stanza_create_avatar_retrieve_data_request(ctx, uid, data->id, jid);
iq_id_handler_add(uid, _avatar_request_item_result_handler, (ProfIqFreeCallback)_free_avatar_data, data);
free(uid);
iq_send_stanza(iq);
xmpp_stanza_release(iq);
}
@@ -297,18 +293,16 @@ _avatar_request_item_result_handler(xmpp_stanza_t* const stanza, void* const use
return 1;
}
char* buf = xmpp_stanza_get_text(st_data);
auto_char char* buf = xmpp_stanza_get_text(st_data);
if (!buf) {
return 1;
}
gsize size;
gchar* de = (gchar*)g_base64_decode(buf, &size);
free(buf);
auto_gchar gchar* de = (gchar*)g_base64_decode(buf, &size);
char* path = files_get_data_path("");
auto_gchar gchar* path = files_get_data_path("");
GString* filename = g_string_new(path);
free(path);
g_string_append(filename, "avatars/");
@@ -323,7 +317,7 @@ _avatar_request_item_result_handler(xmpp_stanza_t* const stanza, void* const use
}
}
gchar* from = str_replace(from_attr, "@", "_at_");
auto_gchar gchar* from = str_replace(from_attr, "@", "_at_");
g_string_append(filename, from);
avatar_metadata* data = (avatar_metadata*)userdata;
@@ -340,8 +334,6 @@ _avatar_request_item_result_handler(xmpp_stanza_t* const stanza, void* const use
g_string_append(filename, ".webp");
}
free(from);
GError* err = NULL;
if (g_file_set_contents(filename->str, de, size, &err) == FALSE) {
log_error("Unable to save picture: %s", err->message);
@@ -371,7 +363,6 @@ _avatar_request_item_result_handler(xmpp_stanza_t* const stanza, void* const use
}
g_string_free(filename, TRUE);
free(de);
return 1;
}