Properly cleaning up server transactions.

git-svn-id: http://yate.null.ro/svn/yate/trunk@806 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
paulc 2006-05-23 18:38:30 +00:00
parent daa7c286a8
commit 680c85c5af
1 changed files with 3 additions and 5 deletions

View File

@ -276,10 +276,12 @@ SIPEvent* SIPTransaction::getEvent()
break;
if (timeout && m_lastMessage)
e = new SIPEvent(m_lastMessage,this);
// fall through because we recheck the timeout
case Finish:
if (timeout)
break;
changeState(Cleared);
// fall trough so we don't wait another turn for processing
// fall through so we don't wait another turn for processing
case Cleared:
setTimeout();
e = new SIPEvent(m_firstMessage,this);
@ -574,10 +576,6 @@ SIPEvent* SIPTransaction::getClientEvent(int state, int timeout)
changeState(Cleared);
}
break;
case Finish:
if (timeout == 0)
changeState(Cleared);
break;
}
return e;
}