# HG changeset patch # User Evan Schoenberg # Date 1167954917 0 # Node ID 21509d8e4e705c5a9f604d15f16ac1881402dfe2 # Parent e8f8749e61827ee54fa0d80af15b91ac303108b6 [gaim-migrate @ 18075] It appears that bye_cmd() can be reached with an MsnCmdProc whose data is NULL -- that is, which was for a switchboard which has been destroyed. This may be better as a simple if (swboard == NULL) return; but since the code doesn't have a check for it at present I thought a g_return_if_fail() would be better until someone who understands all the MSN internals can take a closer look at what's going on. committer: Tailor Script diff -r e8f8749e6182 -r 21509d8e4e70 libgaim/protocols/msn/switchboard.c --- a/libgaim/protocols/msn/switchboard.c Thu Jan 04 23:38:43 2007 +0000 +++ b/libgaim/protocols/msn/switchboard.c Thu Jan 04 23:55:17 2007 +0000 @@ -642,6 +642,10 @@ swboard = cmdproc->data; user = cmd->params[0]; + /* cmdproc->data is set to NULL when the switchboard is destroyed; + * we may get a bye shortly thereafter. */ + g_return_if_fail(swboard != NULL); + if (!(swboard->flag & MSN_SB_FLAG_IM) && (swboard->conv != NULL)) gaim_debug_error("msn_switchboard", "bye_cmd: helper bug\n");