Fixed bug: don't adjust Pong and LagRp timestamps: they must be sent with received request timestamp.

git-svn-id: http://yate.null.ro/svn/yate/trunk@5508 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
marian 2013-05-22 14:47:07 +00:00
parent d3379766f5
commit d65e873624
1 changed files with 5 additions and 2 deletions

View File

@ -1055,9 +1055,12 @@ void IAXTransaction::postFrame(IAXFrame::Type type, u_int32_t subclass, void* da
Lock lock(this);
if (state() == Terminated)
return;
adjustTStamp(tStamp);
// Pong and LagRp don't need timestamp to be adjusted
if (type != IAXFrame::IAX ||
(subclass != IAXControl::Pong && subclass != IAXControl::LagRp))
adjustTStamp(tStamp);
IAXFrameOut* frame = new IAXFrameOut(type,subclass,m_lCallNo,m_rCallNo,m_oSeqNo,m_iSeqNo,tStamp,
(unsigned char*)data,len,m_retransCount,m_retransInterval,ackOnly,mark);
(unsigned char*)data,len,m_retransCount,m_retransInterval,ackOnly,mark);
postFrame(frame);
}