protocols/ircv3/purpleircv3messagehandlers.c

changeset 43212
d2f7c939f650
parent 43206
58f66e90f24a
child 43225
f0ffa584435b
--- a/protocols/ircv3/purpleircv3messagehandlers.c	Sun Mar 30 22:26:33 2025 -0500
+++ b/protocols/ircv3/purpleircv3messagehandlers.c	Sun Mar 30 22:27:50 2025 -0500
@@ -22,6 +22,8 @@
 
 #include <glib/gi18n-lib.h>
 
+#include <pango/pango.h>
+
 #include "purpleircv3messagehandlers.h"
 
 #include "purpleircv3connection.h"
@@ -555,6 +557,7 @@
 			g_free(body);
 		}
 	} else {
+		PangoAttrList *attrs = NULL;
 		char *stripped = NULL;
 
 		conversation = purple_ircv3_connection_find_or_create_conversation(connection,
@@ -563,9 +566,11 @@
 		                                                  conversation,
 		                                                  announce);
 
-		stripped = ibis_formatting_strip(params[1]);
+		stripped = ibis_formatting_parse(params[1], &attrs);
 		message = purple_message_new(member, stripped);
+		purple_message_set_attributes(message, attrs);
 		g_clear_pointer(&stripped, g_free);
+		g_clear_pointer(&attrs, pango_attr_list_unref);
 	}
 
 	if(purple_strequal(command, IBIS_MSG_NOTICE)) {

mercurial