Mercurial > pidgin.yaz
comparison libpurple/protocols/msn/oim.c @ 20500:403ff626b803
merge of '0d182c079b200633b234b9a8216aba155384f21b'
and 'f1386de039f67a9907085baf097986700135cac6'
author | Ka-Hing Cheung <khc@hxbc.us> |
---|---|
date | Sun, 09 Sep 2007 00:50:14 +0000 |
parents | 6ef43e723595 7e7add38a02f |
children | f6dff814d95f |
comparison
equal
deleted
inserted
replaced
20498:6ef43e723595 | 20500:403ff626b803 |
---|---|
166 msn_oim_send_process(MsnOim *oim, const char *body, int len) | 166 msn_oim_send_process(MsnOim *oim, const char *body, int len) |
167 { | 167 { |
168 xmlnode *responseNode, *bodyNode; | 168 xmlnode *responseNode, *bodyNode; |
169 xmlnode *faultNode, *faultCodeNode, *faultstringNode; | 169 xmlnode *faultNode, *faultCodeNode, *faultstringNode; |
170 xmlnode *detailNode, *challengeNode; | 170 xmlnode *detailNode, *challengeNode; |
171 char *faultCodeStr, *faultstring; | 171 char *faultCodeStr = NULL, *faultstring = NULL; |
172 | 172 |
173 responseNode = xmlnode_from_str(body,len); | 173 responseNode = xmlnode_from_str(body,len); |
174 g_return_if_fail(responseNode != NULL); | 174 g_return_if_fail(responseNode != NULL); |
175 bodyNode = xmlnode_get_child(responseNode,"Body"); | 175 bodyNode = xmlnode_get_child(responseNode,"Body"); |
176 faultNode = xmlnode_get_child(bodyNode,"Fault"); | 176 faultNode = xmlnode_get_child(bodyNode,"Fault"); |
224 /*repost the send*/ | 224 /*repost the send*/ |
225 purple_debug_info("MSNP14","prepare to repost the send...\n"); | 225 purple_debug_info("MSNP14","prepare to repost the send...\n"); |
226 msn_oim_send_msg(oim); | 226 msn_oim_send_msg(oim); |
227 | 227 |
228 oim_send_process_fail: | 228 oim_send_process_fail: |
229 g_free(faultstring); | |
230 g_free(faultCodeStr); | |
229 xmlnode_free(responseNode); | 231 xmlnode_free(responseNode); |
230 return ; | 232 return ; |
231 } | 233 } |
232 | 234 |
233 static void | 235 static void |
546 * prepare to report the OIM to user | 548 * prepare to report the OIM to user |
547 */ | 549 */ |
548 static void | 550 static void |
549 msn_oim_get_process(MsnOim *oim, const char *oim_msg) | 551 msn_oim_get_process(MsnOim *oim, const char *oim_msg) |
550 { | 552 { |
551 xmlnode *oimNode,*bodyNode,*responseNode,*msgNode; | 553 xmlnode *oim_node,*bodyNode,*responseNode,*msgNode; |
552 char *msg_data,*msg_str; | 554 char *msg_str; |
553 | 555 |
554 oimNode = xmlnode_from_str(oim_msg, strlen(oim_msg)); | 556 oim_node = xmlnode_from_str(oim_msg, strlen(oim_msg)); |
555 bodyNode = xmlnode_get_child(oimNode,"Body"); | 557 bodyNode = xmlnode_get_child(oim_node,"Body"); |
556 responseNode = xmlnode_get_child(bodyNode,"GetMessageResponse"); | 558 responseNode = xmlnode_get_child(bodyNode,"GetMessageResponse"); |
557 msgNode = xmlnode_get_child(responseNode,"GetMessageResult"); | 559 msgNode = xmlnode_get_child(responseNode,"GetMessageResult"); |
558 msg_data = xmlnode_get_data(msgNode); | 560 msg_str = xmlnode_get_data(msgNode); |
559 msg_str = g_strdup(msg_data); | |
560 g_free(msg_data); | |
561 purple_debug_info("OIM","msg:{%s}\n",msg_str); | 561 purple_debug_info("OIM","msg:{%s}\n",msg_str); |
562 msn_oim_report_to_user(oim,msg_str); | 562 msn_oim_report_to_user(oim,msg_str); |
563 | 563 |
564 g_free(msg_str); | 564 g_free(msg_str); |
565 xmlnode_free(oim_node); | |
565 } | 566 } |
566 | 567 |
567 static void | 568 static void |
568 msn_oim_get_read_cb(gpointer data, gint source, PurpleInputCondition cond) | 569 msn_oim_get_read_cb(gpointer data, gint source, PurpleInputCondition cond) |
569 { | 570 { |
653 g_free(msgid); | 654 g_free(msgid); |
654 g_free(rTime); | 655 g_free(rTime); |
655 rTime = NULL; | 656 rTime = NULL; |
656 g_free(nickname); | 657 g_free(nickname); |
657 } | 658 } |
659 g_free(unread); | |
658 xmlnode_free(node); | 660 xmlnode_free(node); |
659 } | 661 } |
660 | 662 |
661 /*Post to get the Offline Instant Message*/ | 663 /*Post to get the Offline Instant Message*/ |
662 static void | 664 static void |