[commit] r13324 - in freeswitch/trunk/libs/sofia-sip: . libsofia-sip-ua/nua
Author: mikej Date: Fri May 15 10:50:43 2009 New Revision: 13324 Log: Tue May 12 11:52:32 CDT 2009 Pekka Pessi <first.last@nokia.com> * nua_session.c: always clean and remove INVITE client request in nua_invite_client_ack() Ignore-this: bdace77be7b43629b591f5adf7315341 Coverity issue. Modified: freeswitch/trunk/libs/sofia-sip/.update freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c Modified: freeswitch/trunk/libs/sofia-sip/.update ============================================================================== --- freeswitch/trunk/libs/sofia-sip/.update (original) +++ freeswitch/trunk/libs/sofia-sip/.update Fri May 15 10:50:43 2009 @@ -1 +1 @@ -Fri May 15 10:49:06 CDT 2009 +Fri May 15 10:49:56 CDT 2009 Modified: freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c ============================================================================== --- freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c (original) +++ freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c Fri May 15 10:50:43 2009 @@ -1250,9 +1250,7 @@ if (!ds->ds_leg) { /* XXX - fix nua_dialog_usage_remove_at() instead! */ - nua_client_request_clean(cr); - nua_client_request_remove(cr); - return -1; + goto error; } assert(ds->ds_leg); @@ -1260,7 +1258,7 @@ msg = nta_outgoing_getrequest(cr->cr_orq); sip = sip_object(msg); if (!msg) - return -1; + goto error; invite_branch = nta_outgoing_branch(cr->cr_orq); wa = sip_authorization(sip); @@ -1271,7 +1269,7 @@ msg = nta_msg_create(nh->nh_nua->nua_nta, 0); sip = sip_object(msg); if (!msg) - return -1; + goto error; cseq = sip_cseq_create(msg_home(msg), cr->cr_seq, SIP_METHOD_ACK); @@ -1386,6 +1384,7 @@ if (error == -1) msg_destroy(msg); + error: cr->cr_acked = 1; /* ... or we have at least tried */ nua_client_request_clean(cr); @@ -1617,7 +1616,6 @@ } else if (cri->cr_status < 300 && !cri->cr_acked) { nua_invite_client_ack(cri, NULL); - nua_client_request_clean(cri); } } if (nua_client_create(nh, nua_r_bye, &nua_bye_client_methods, NULL) != 0) @@ -3418,7 +3416,6 @@ next_state = nua_callstate_ready; else next_state = nua_callstate_terminating; - nua_client_request_clean(du->du_cr); } }
participants (1)
-
FreeSWITCH SVN