mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-07-22 11:53:16 +00:00
udpate
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3037 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
ba46200539
commit
e1125f336c
@ -2281,13 +2281,15 @@ static void sip_i_state(int status,
|
|||||||
break;
|
break;
|
||||||
case nua_callstate_terminated:
|
case nua_callstate_terminated:
|
||||||
if (session) {
|
if (session) {
|
||||||
switch_set_flag_locked(tech_pvt, TFLAG_BYE);
|
if (!switch_test_flag(tech_pvt, TFLAG_BYE)) {
|
||||||
if (switch_test_flag(tech_pvt, TFLAG_NOHUP)) {
|
switch_set_flag_locked(tech_pvt, TFLAG_BYE);
|
||||||
switch_clear_flag_locked(tech_pvt, TFLAG_NOHUP);
|
if (switch_test_flag(tech_pvt, TFLAG_NOHUP)) {
|
||||||
nua_handle_destroy(tech_pvt->nh);
|
switch_clear_flag_locked(tech_pvt, TFLAG_NOHUP);
|
||||||
tech_pvt->nh = NULL;
|
nua_handle_destroy(tech_pvt->nh);
|
||||||
} else {
|
tech_pvt->nh = NULL;
|
||||||
terminate_session(&session, sip_cause_to_freeswitch(status), __LINE__);
|
} else {
|
||||||
|
terminate_session(&session, sip_cause_to_freeswitch(status), __LINE__);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user