1
0
Fork 0

Merge pull request #135 from juribeparada/master

Fix poll handling
ycs232-kbc
Jonathan Naylor 6 years ago committed by GitHub
commit 89d9480569
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -292,10 +292,11 @@ int CYSFGateway::run()
}
if (m_ysfNetwork != NULL && m_linkType == LINK_YSF && !m_exclude) {
if (::memcmp(buffer + 0U, "YSFD", 4U) == 0) {
m_ysfNetwork->write(buffer);
if (::memcmp(buffer + 0U, "YSFD", 4U) == 0)
m_inactivityTimer.start();
}
}
if (m_fcsNetwork != NULL && m_linkType == LINK_FCS && !m_exclude) {
if (::memcmp(buffer + 0U, "YSFD", 4U) == 0) {

@ -148,9 +148,13 @@ void CYSFNetwork::writeUnlink(unsigned int count)
void CYSFNetwork::clock(unsigned int ms)
{
unsigned char buffer[BUFFER_LENGTH];
in_addr address;
unsigned int port;
m_pollTimer.clock(ms);
if (m_pollTimer.isRunning() && m_pollTimer.hasExpired())
writePoll();
int length = m_socket.read(buffer, BUFFER_LENGTH, address, port);
if (length <= 0)
return;
@ -158,10 +162,6 @@ void CYSFNetwork::clock(unsigned int ms)
if (m_port == 0U)
return;
m_pollTimer.clock(ms);
if (m_pollTimer.isRunning() && m_pollTimer.hasExpired())
writePoll();
if (address.s_addr != m_address.s_addr || port != m_port)
return;

Loading…
Cancel
Save