Start the M2PA ACK timer before sending the SIGTRAN packet.

Prevents a race condition from clearing the timer too early.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4155 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
paulc 2011-03-04 14:29:12 +00:00
parent 062ff961be
commit ac3da510d7
1 changed files with 2 additions and 4 deletions

View File

@ -1360,9 +1360,9 @@ void SS7M2PA::retransData()
head[3] = m_needToAck & 0xff ;
if (m_confTimer.started())
m_confTimer.stop();
transmitMSG(1,M2PA, 1, *msg,1);
if (!m_ackTimer.started())
m_ackTimer.start();
transmitMSG(1,M2PA, 1, *msg,1);
}
}
@ -1401,11 +1401,9 @@ bool SS7M2PA::transmitMSU(const SS7MSU& msu)
m_ackList.append(new DataBlock(packet));
if (m_dumpMsg)
dumpMsg(1,M2PA,1,packet,1,true);
bool ok = transmitMSG(1,M2PA,1,packet,1);
lock.drop();
if (!m_ackTimer.started())
m_ackTimer.start();
return ok;
return transmitMSG(1,M2PA,1,packet,1);
}
void SS7M2PA::notifyLayer(SignallingInterface::Notification event)