# HG changeset patch # User Carlos Silva # Date 1184436839 0 # Node ID b888c2f15c7918071e30c73e76bf6de6668647dd # Parent 86da6ab1f61255f8cb54859e06f99d99bbbb6e5a Print the policies sent by the server (GCF command) in a human-readable way. diff -r 86da6ab1f612 -r b888c2f15c79 libpurple/protocols/msn/notification.c --- a/libpurple/protocols/msn/notification.c Sat Jul 14 00:04:48 2007 +0000 +++ b/libpurple/protocols/msn/notification.c Sat Jul 14 18:13:59 2007 +0000 @@ -1492,14 +1492,30 @@ gcf_cmd_post(MsnCmdProc *cmdproc, MsnCommand *cmd, char *payload, size_t len) { - /*get the payload content*/ - purple_debug_info("MaYuan","GCF{%s}\n",cmd->payload); + xmlnode * root; + gchar * buf; + + g_return_if_fail(cmd->payload != NULL); + + if ( (root = xmlnode_from_str(cmd->payload, cmd->payload_len)) == NULL) + { + purple_debug_error("MSN","Unable to parse GCF payload into a XML tree"); + return; + } + + buf = xmlnode_to_formatted_str(root, NULL); + + /* get the payload content */ + purple_debug_info("MaYuan","GCF command payload:\n\"%s\"\n",buf); + + g_free(buf); + xmlnode_free(root); } static void gcf_cmd(MsnCmdProc *cmdproc, MsnCommand *cmd) { - purple_debug_info("MaYuan","Processing GCF... \n"); + purple_debug_info("MaYuan","Processing GCF command\n"); cmdproc->last_cmd->payload_cb = gcf_cmd_post; return; }