libpurple/request.c

changeset 42105
e431d160e3a1
parent 42005
92c8a7e3aaf5
child 42112
86e0a26348a1
--- a/libpurple/request.c	Tue Feb 28 03:22:13 2023 -0600
+++ b/libpurple/request.c	Tue Feb 28 03:23:06 2023 -0600
@@ -120,7 +120,7 @@
 		{
 			unsigned int scale_x;
 			unsigned int scale_y;
-			const char *buffer;
+			char *buffer;
 			gsize size;
 		} image;
 
@@ -891,25 +891,20 @@
 	g_free(field->type_hint);
 	g_free(field->tooltip);
 
-	if (field->type == PURPLE_REQUEST_FIELD_STRING)
-	{
+	if(field->type == PURPLE_REQUEST_FIELD_STRING) {
 		g_free(field->u.string.default_value);
 		g_free(field->u.string.value);
-	}
-	else if (field->type == PURPLE_REQUEST_FIELD_CHOICE)
-	{
+	} else if(field->type == PURPLE_REQUEST_FIELD_CHOICE) {
 		g_list_free_full(field->u.choice.elements, (GDestroyNotify)purple_key_value_pair_free);
-	}
-	else if (field->type == PURPLE_REQUEST_FIELD_LIST)
-	{
+	} else if(field->type == PURPLE_REQUEST_FIELD_LIST) {
 		g_list_free_full(field->u.list.items, (GDestroyNotify)purple_key_value_pair_free);
 		g_list_free_full(field->u.list.selected, g_free);
 		g_hash_table_destroy(field->u.list.item_data);
 		g_hash_table_destroy(field->u.list.selected_table);
-	}
-	else if (field->type == PURPLE_REQUEST_FIELD_DATASHEET)
-	{
+	} else if(field->type == PURPLE_REQUEST_FIELD_DATASHEET) {
 		purple_request_datasheet_free(field->u.datasheet.sheet);
+	} else if(field->type == PURPLE_REQUEST_FIELD_IMAGE) {
+		g_free(field->u.image.buffer);
 	}
 
 	g_free(field);

mercurial