comparison libgaim/protocols/msn/switchboard.c @ 20390:d634f88e25d8

msn.tgz from SF Patch #1621854 from Ka-Hing Cheung "This tarball brings soc-2006-msnp13 up to head. In addition to that it also fixes a crash with sending offline messages. I wasn't able to generate a diff against that branch, svn seems to insist on diff'ing against HEAD after I run the merge command. After running `svn merge -r 16309:HEAD https://gaim.svn.sourceforge.net/svnroot/gaim/trunk` on the soc-2006-msnp13 you can replace the msn directory with the attached tarball. The fix for offline messaging is on msn.c:901: if (!session->oim) session->oim = msn_oim_new(session)" committer: Richard Laager <rlaager@wiktel.com>
author Ka-Hing Cheung <khc@hxbc.us>
date Sun, 15 Apr 2007 02:18:17 +0000
parents e354528c4163
children 9ba7dee775e1
comparison
equal deleted inserted replaced
20389:e354528c4163 20390:d634f88e25d8
82 return; 82 return;
83 83
84 swboard->destroying = TRUE; 84 swboard->destroying = TRUE;
85 85
86 /* If it linked us is because its looking for trouble */ 86 /* If it linked us is because its looking for trouble */
87 while (swboard->slplinks != NULL) 87 if (swboard->slplink != NULL)
88 msn_slplink_destroy(swboard->slplinks->data); 88 msn_slplink_destroy(swboard->slplink);
89 89
90 /* Destroy the message queue */ 90 /* Destroy the message queue */
91 while ((msg = g_queue_pop_head(swboard->msg_queue)) != NULL) 91 while ((msg = g_queue_pop_head(swboard->msg_queue)) != NULL)
92 { 92 {
93 if (swboard->error != MSN_SB_ERROR_NONE) 93 if (swboard->error != MSN_SB_ERROR_NONE)
644 const char *user; 644 const char *user;
645 645
646 swboard = cmdproc->data; 646 swboard = cmdproc->data;
647 user = cmd->params[0]; 647 user = cmd->params[0];
648 648
649 /* cmdproc->data is set to NULL when the switchboard is destroyed;
650 * we may get a bye shortly thereafter. */
651 g_return_if_fail(swboard != NULL);
652
653 if (!(swboard->flag & MSN_SB_FLAG_IM) && (swboard->conv != NULL)) 649 if (!(swboard->flag & MSN_SB_FLAG_IM) && (swboard->conv != NULL))
654 gaim_debug_error("msn_switchboard", "bye_cmd: helper bug\n"); 650 gaim_debug_error("msn_switchboard", "bye_cmd: helper bug\n");
655 651
656 if (swboard->conv == NULL) 652 if (swboard->conv == NULL)
657 { 653 {