--- a/libpurple/protocols/msn/msn.c Sat Aug 22 23:58:18 2009 +0000 +++ b/libpurple/protocols/msn/msn.c Sun Aug 23 01:03:07 2009 +0000 @@ -1722,6 +1722,7 @@ MsnMessage *msg; char *msgformat; char *msgtext; + size_t msglen; account = purple_connection_get_account(gc); session = gc->proto_data; @@ -1736,8 +1737,9 @@ swboard->flag |= MSN_SB_FLAG_IM; msn_import_html(message, &msgformat, &msgtext); - - if (strlen(msgtext) + strlen(msgformat) + strlen(VERSION) > 1564) + msglen = strlen(msgtext); + + if ((msglen == 0) || (msglen + strlen(msgformat) + strlen(VERSION) > 1564)) { g_free(msgformat); g_free(msgtext);