Mercurial > pidgin
comparison libpurple/protocols/msn/slpcall.c @ 17114:8ed7b2d32ad1
slpcall now explicitlt references its xfer and unreferences it when it is destroyed. While it *looks* like this should *probably* have happened anyways due to the interactins between xfer_init, xfer_end, and xfer_cancel_remote, having the xfer's owner make this explicit makes the process less fragile and more obvious, and it may fix a crash as the slp is destroyed. Fixes #1070
author | Evan Schoenberg <evan.s@dreskin.net> |
---|---|
date | Thu, 17 May 2007 14:32:24 +0000 |
parents | 0b7110b9e368 |
children | 44b4e8bd759b 0f6747c5dcc2 |
comparison
equal
deleted
inserted
replaced
17113:0b7110b9e368 | 17114:8ed7b2d32ad1 |
---|---|
117 | 117 |
118 msn_slplink_remove_slpcall(slpcall->slplink, slpcall); | 118 msn_slplink_remove_slpcall(slpcall->slplink, slpcall); |
119 | 119 |
120 if (slpcall->end_cb != NULL) | 120 if (slpcall->end_cb != NULL) |
121 slpcall->end_cb(slpcall, session); | 121 slpcall->end_cb(slpcall, session); |
122 | |
123 if (slpcall->xfer != NULL) | |
124 purple_xfer_unref(slpcall->xfer); | |
122 | 125 |
123 g_free(slpcall); | 126 g_free(slpcall); |
124 } | 127 } |
125 | 128 |
126 void | 129 void |