grim/testing

Replace newlines in topics with spaces.
release-2.x.y
2021-06-07, Gary Kramlich
d0bc6fbd6c7f
Parents 0fcf52e87380
Children 2f616a33f583
Replace newlines in topics with spaces.

Testing Done:
Set an xmpp conference topic to "this\r\nis\r\na\r\nstupid\r\ntopic" and verified it didn't expand the infopane.

Bugs closed: PIDGIN-16704

Reviewed at https://reviews.imfreedom.org/r/730/
--- a/pidgin/gtkconv.c Mon Jun 07 22:21:56 2021 -0500
+++ b/pidgin/gtkconv.c Mon Jun 07 22:26:23 2021 -0500
@@ -6748,11 +6748,22 @@
if (gtkchat->topic_text != NULL)
{
+ gchar *tmp1 = NULL, *tmp2 = NULL;
+
topic = purple_conv_chat_get_topic(chat);
- gtk_entry_set_text(GTK_ENTRY(gtkchat->topic_text), topic ? topic : "");
+ /* replace \r\n with a space */
+ tmp1 = purple_strreplace(topic, "\r\n", " ");
+
+ /* replace \n with a space */
+ tmp2 = purple_strreplace(tmp1, "\n", " ");
+ g_free(tmp1);
+
+ gtk_entry_set_text(GTK_ENTRY(gtkchat->topic_text), tmp2 ? tmp2 : "");
gtk_tooltips_set_tip(gtkconv->tooltips, gtkchat->topic_text,
- topic ? topic : "", NULL);
+ tmp2 ? tmp2 : "", NULL);
+
+ g_free(tmp2);
}
}