Mercurial > pidgin.yaz
comparison libgaim/protocols/jabber/si.c @ 15284:c2f15e2117dc
[gaim-migrate @ 18073]
gaim_xfer_new() can return NULL via g_return_if_fail(). It should therefore not be assumed that it returns a GaimXfer; check against its return value before proceeding when creating a GaimXfer.
committer: Tailor Script <tailor@pidgin.im>
author | Evan Schoenberg <evan.s@dreskin.net> |
---|---|
date | Thu, 04 Jan 2007 23:20:12 +0000 |
parents | 118fd0dc5b6e |
children |
comparison
equal
deleted
inserted
replaced
15283:8e39ca9b954a | 15284:c2f15e2117dc |
---|---|
840 JabberSIXfer *jsx; | 840 JabberSIXfer *jsx; |
841 | 841 |
842 js = gc->proto_data; | 842 js = gc->proto_data; |
843 | 843 |
844 xfer = gaim_xfer_new(gc->account, GAIM_XFER_SEND, who); | 844 xfer = gaim_xfer_new(gc->account, GAIM_XFER_SEND, who); |
845 | 845 if (xfer) |
846 xfer->data = jsx = g_new0(JabberSIXfer, 1); | 846 { |
847 jsx->js = js; | 847 xfer->data = jsx = g_new0(JabberSIXfer, 1); |
848 | 848 jsx->js = js; |
849 gaim_xfer_set_init_fnc(xfer, jabber_si_xfer_init); | 849 |
850 gaim_xfer_set_cancel_send_fnc(xfer, jabber_si_xfer_cancel_send); | 850 gaim_xfer_set_init_fnc(xfer, jabber_si_xfer_init); |
851 gaim_xfer_set_end_fnc(xfer, jabber_si_xfer_end); | 851 gaim_xfer_set_cancel_send_fnc(xfer, jabber_si_xfer_cancel_send); |
852 | 852 gaim_xfer_set_end_fnc(xfer, jabber_si_xfer_end); |
853 js->file_transfers = g_list_append(js->file_transfers, xfer); | 853 |
854 js->file_transfers = g_list_append(js->file_transfers, xfer); | |
855 } | |
854 | 856 |
855 return xfer; | 857 return xfer; |
856 } | 858 } |
857 | 859 |
858 void jabber_si_xfer_send(GaimConnection *gc, const char *who, const char *file) | 860 void jabber_si_xfer_send(GaimConnection *gc, const char *who, const char *file) |
948 jsx->js = js; | 950 jsx->js = js; |
949 jsx->stream_id = g_strdup(stream_id); | 951 jsx->stream_id = g_strdup(stream_id); |
950 jsx->iq_id = g_strdup(xmlnode_get_attrib(packet, "id")); | 952 jsx->iq_id = g_strdup(xmlnode_get_attrib(packet, "id")); |
951 | 953 |
952 xfer = gaim_xfer_new(js->gc->account, GAIM_XFER_RECEIVE, from); | 954 xfer = gaim_xfer_new(js->gc->account, GAIM_XFER_RECEIVE, from); |
953 xfer->data = jsx; | 955 if (xfer) |
954 | 956 { |
955 gaim_xfer_set_filename(xfer, filename); | 957 xfer->data = jsx; |
956 if(filesize > 0) | 958 |
957 gaim_xfer_set_size(xfer, filesize); | 959 gaim_xfer_set_filename(xfer, filename); |
958 | 960 if(filesize > 0) |
959 gaim_xfer_set_init_fnc(xfer, jabber_si_xfer_init); | 961 gaim_xfer_set_size(xfer, filesize); |
960 gaim_xfer_set_request_denied_fnc(xfer, jabber_si_xfer_request_denied); | 962 |
961 gaim_xfer_set_cancel_recv_fnc(xfer, jabber_si_xfer_cancel_recv); | 963 gaim_xfer_set_init_fnc(xfer, jabber_si_xfer_init); |
962 gaim_xfer_set_end_fnc(xfer, jabber_si_xfer_end); | 964 gaim_xfer_set_request_denied_fnc(xfer, jabber_si_xfer_request_denied); |
963 | 965 gaim_xfer_set_cancel_recv_fnc(xfer, jabber_si_xfer_cancel_recv); |
964 js->file_transfers = g_list_append(js->file_transfers, xfer); | 966 gaim_xfer_set_end_fnc(xfer, jabber_si_xfer_end); |
965 | 967 |
966 gaim_xfer_request(xfer); | 968 js->file_transfers = g_list_append(js->file_transfers, xfer); |
967 } | 969 |
968 | 970 gaim_xfer_request(xfer); |
969 | 971 } |
972 } | |
973 | |
974 |