Mercurial > pidgin.yaz
comparison libpurple/protocols/msn/slp.c @ 17135:acde78931954
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:29:17 +0000 |
parents | 21830d70709b |
children | 0b7110b9e368 |
comparison
equal
deleted
inserted
replaced
17084:10c7c5d4ea25 | 17135:acde78931954 |
---|---|
361 purple_xfer_set_init_fnc(xfer, msn_xfer_init); | 361 purple_xfer_set_init_fnc(xfer, msn_xfer_init); |
362 purple_xfer_set_request_denied_fnc(xfer, msn_xfer_cancel); | 362 purple_xfer_set_request_denied_fnc(xfer, msn_xfer_cancel); |
363 purple_xfer_set_cancel_recv_fnc(xfer, msn_xfer_cancel); | 363 purple_xfer_set_cancel_recv_fnc(xfer, msn_xfer_cancel); |
364 | 364 |
365 slpcall->xfer = xfer; | 365 slpcall->xfer = xfer; |
366 purple_xfer_ref(slpcall->xfer); | |
367 | |
366 xfer->data = slpcall; | 368 xfer->data = slpcall; |
367 | 369 |
368 purple_xfer_request(xfer); | 370 purple_xfer_request(xfer); |
369 } | 371 } |
370 } | 372 } |