# HG changeset patch # User Mark Doliner # Date 1212399572 0 # Node ID 551a42212b56d019e59e9a262d48fe95b69ce23b # Parent a6cae482c68fa1850dec963993c139453beedfff 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 diff -r a6cae482c68f -r 551a42212b56 libpurple/protocols/oscar/oscar.c --- 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', ' '); } }