Network: Fix SocketPoller error handling

This commit is contained in:
Jérôme Leclercq 2018-05-31 16:08:46 +02:00
parent db0e3267da
commit 33fb70b65b
3 changed files with 11 additions and 10 deletions

View File

@ -106,6 +106,7 @@ Nazara Engine:
- Added ModelLibrary, ModelManager and ModelSaver
- Added AbstractViewer::Project and AbstractViewer::Unproject methods
- Added AbstractViewer::ProjectDepth method
- Fixed SocketPoller not be able to recover from some errors (like invalid sockets and such)
Nazara Development Kit:
- Added ImageWidget (#139)

View File

@ -100,17 +100,17 @@ namespace Nz
if (entry.revents & (POLLWRNORM | POLLERR))
m_readyToWriteSockets.insert(entry.fd);
entry.revents = 0;
if (--socketRemaining == 0)
break;
}
else
{
NazaraWarning("Socket " + String::Number(entry.fd) + " was returned by WSAPoll without POLLRDNORM nor POLLWRNORM events (events: 0x" + String::Number(entry.revents, 16) + ')');
activeSockets--;
}
entry.revents = 0;
if (--socketRemaining == 0)
break;
}
}

View File

@ -154,17 +154,17 @@ namespace Nz
if (entry.revents & (POLLWRNORM | POLLERR))
m_readyToWriteSockets.insert(entry.fd);
entry.revents = 0;
if (--socketRemaining == 0)
break;
}
else
{
NazaraWarning("Socket " + String::Number(entry.fd) + " was returned by WSAPoll without POLLRDNORM nor POLLWRNORM events (events: 0x" + String::Number(entry.revents, 16) + ')');
activeSockets--;
}
entry.revents = 0;
if (--socketRemaining == 0)
break;
}
}
#else