Release the ISUP call and the circuit when failed to transmit the IAM.

This can happen when the MTP route is prohibited.


git-svn-id: http://voip.null.ro/svn/yate@4107 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
paulc 2011-02-14 11:00:26 +00:00
parent 6f5d4f5b83
commit ae0f68f596
1 changed files with 3 additions and 3 deletions

View File

@ -3397,7 +3397,7 @@ SignallingCall* SS7ISUP::call(SignallingMessage* msg, String& reason)
} }
break; break;
} }
SignallingCall* call = 0; SS7ISUPCall* call = 0;
if (reason.null()) { if (reason.null()) {
String* cicParams = msg->params().getParam("circuit_parameters"); String* cicParams = msg->params().getParam("circuit_parameters");
if (cicParams) { if (cicParams) {
@ -3427,8 +3427,8 @@ SignallingCall* SS7ISUP::call(SignallingMessage* msg, String& reason)
// Drop lock and send the event // Drop lock and send the event
mylock.drop(); mylock.drop();
if (!event->sendEvent()) { if (!event->sendEvent()) {
m_calls.remove(call); call->setTerminate(false,"failure");
call = 0; TelEngine::destruct(call);
reason = "failure"; reason = "failure";
} }
} }