Skip to content
Snippets Groups Projects
Commit 18ffe1a4 authored by Alexandre Savard's avatar Alexandre Savard
Browse files

[#2006] Fix rtp session deletion

parent 5f94579b
No related branches found
No related tags found
No related merge requests found
...@@ -730,6 +730,12 @@ SIPVoIPLink::hangup (const CallID& id) ...@@ -730,6 +730,12 @@ SIPVoIPLink::hangup (const CallID& id)
return false; return false;
} }
// Release RTP thread
if (Manager::instance().isCurrentCall (id)) {
_debug ("* SIP Info: Stopping AudioRTP for hangup\n");
_audiortp->stop();
}
// User hangup current call. Notify peer // User hangup current call. Notify peer
status = pjsip_inv_end_session (call->getInvSession(), 404, NULL, &tdata); status = pjsip_inv_end_session (call->getInvSession(), 404, NULL, &tdata);
...@@ -750,13 +756,6 @@ SIPVoIPLink::hangup (const CallID& id) ...@@ -750,13 +756,6 @@ SIPVoIPLink::hangup (const CallID& id)
call->getInvSession()->mod_data[getModId() ] = NULL; call->getInvSession()->mod_data[getModId() ] = NULL;
// Release RTP thread
if (Manager::instance().isCurrentCall (id)) {
_debug ("* SIP Info: Stopping AudioRTP for hangup\n");
_audiortp->stop();
}
terminateOneCall (id); terminateOneCall (id);
removeCall (id); removeCall (id);
...@@ -778,6 +777,12 @@ SIPVoIPLink::peerHungup (const CallID& id) ...@@ -778,6 +777,12 @@ SIPVoIPLink::peerHungup (const CallID& id)
return false; return false;
} }
// Release RTP thread
if (Manager::instance().isCurrentCall (id)) {
_debug ("* SIP Info: Stopping AudioRTP for hangup\n");
_audiortp->stop();
}
// User hangup current call. Notify peer // User hangup current call. Notify peer
status = pjsip_inv_end_session (call->getInvSession(), 404, NULL, &tdata); status = pjsip_inv_end_session (call->getInvSession(), 404, NULL, &tdata);
...@@ -794,12 +799,6 @@ SIPVoIPLink::peerHungup (const CallID& id) ...@@ -794,12 +799,6 @@ SIPVoIPLink::peerHungup (const CallID& id)
call->getInvSession()->mod_data[getModId() ] = NULL; call->getInvSession()->mod_data[getModId() ] = NULL;
// Release RTP thread
if (Manager::instance().isCurrentCall (id)) {
_debug ("* SIP Info: Stopping AudioRTP for hangup\n");
_audiortp->stop();
}
terminateOneCall (id); terminateOneCall (id);
removeCall (id); removeCall (id);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment