Bug fix: don't terminate a transaction until an ACK is received which matches the sent HANGUP frame.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5195 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
parent
e1941d32f9
commit
0ebbdbd97f
|
@ -1084,7 +1084,7 @@ IAXEvent* IAXTransaction::getEventResponse(IAXFrameOut* frame, bool& delFrame)
|
|||
if (findInFrameAck(frame)) {
|
||||
frame->setAck();
|
||||
// Terminating frame sent
|
||||
if (m_state == Terminating)
|
||||
if (m_state == Terminating && frame->type() == IAXFrame::IAX && frame->subclass() == IAXControl::Hangup)
|
||||
return terminate(IAXEvent::Terminated,true);
|
||||
// Frame only need ACK
|
||||
if (frame->ackOnly())
|
||||
|
|
Loading…
Reference in New Issue