changeset 23268:551a42212b56

Keep track of available messages as HTML not plain text. This fixes a recent bug where available messages weren't being escaped when displayed in the status text
author Mark Doliner <mark@kingant.net>
date Mon, 02 Jun 2008 09:39:32 +0000
parents a6cae482c68f
children e7b6767f263b
files libpurple/protocols/oscar/oscar.c
diffstat 1 files changed, 5 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/libpurple/protocols/oscar/oscar.c	Mon Jun 02 09:05:22 2008 +0000
+++ b/libpurple/protocols/oscar/oscar.c	Mon Jun 02 09:39:32 2008 +0000
@@ -1920,6 +1920,7 @@
 	{
 		char *message = NULL;
 		char *itmsurl = NULL;
+		char *tmp;
 
 		if (info->status != NULL && info->status[0] != '\0')
 			/* Grab the available message */
@@ -1931,8 +1932,10 @@
 			itmsurl = oscar_encoding_to_utf8(account, info->itmsurl_encoding,
 					info->itmsurl, info->itmsurl_len);
 
+		tmp = g_markup_escape_text(message, -1);
 		purple_prpl_got_user_status(account, info->sn, status_id,
-				"message", message, "itmsurl", itmsurl, NULL);
+				"message", tmp, "itmsurl", itmsurl, NULL);
+		g_free(tmp);
 
 		g_free(message);
 		g_free(itmsurl);
@@ -5705,7 +5708,7 @@
 		message = purple_status_get_attr_string(status, "message");
 		if (message != NULL)
 		{
-			ret = g_markup_escape_text(message, -1);
+			ret = g_strdup(message);
 			purple_util_chrreplace(ret, '\n', ' ');
 		}
 	}