Network/Windows: MinGW compatibility fix

This commit is contained in:
Jérôme Leclercq 2018-01-26 15:41:01 +01:00
parent 4911aff64f
commit b93320613e
2 changed files with 10 additions and 4 deletions

View File

@ -9,6 +9,11 @@
#include <cstring> #include <cstring>
#include <Nazara/Network/Debug.hpp> #include <Nazara/Network/Debug.hpp>
// some MinGW distributions seem to lack some defines
#ifndef WSA_NOT_ENOUGH_MEMORY
#define WSA_NOT_ENOUGH_MEMORY 8L
#endif
namespace Nz namespace Nz
{ {
namespace Detail namespace Detail

View File

@ -37,7 +37,7 @@ namespace Nz
#if NAZARA_NETWORK_POLL_SUPPORT #if NAZARA_NETWORK_POLL_SUPPORT
return m_readyToReadSockets.count(socket) != 0; return m_readyToReadSockets.count(socket) != 0;
#else #else
return FD_ISSET(socket, &m_readyToReadSockets) != 0; return FD_ISSET(socket, const_cast<fd_set*>(&m_readyToReadSockets)) != 0; //< FD_ISSET is not const-correct
#endif #endif
} }
@ -46,7 +46,7 @@ namespace Nz
#if NAZARA_NETWORK_POLL_SUPPORT #if NAZARA_NETWORK_POLL_SUPPORT
return m_readyToWriteSockets.count(socket) != 0; return m_readyToWriteSockets.count(socket) != 0;
#else #else
return FD_ISSET(socket, &m_readyToWriteSockets) != 0; return FD_ISSET(socket, const_cast<fd_set*>(&m_readyToWriteSockets)) != 0; //< FD_ISSET is not const-correct
#endif #endif
} }
@ -55,8 +55,9 @@ namespace Nz
#if NAZARA_NETWORK_POLL_SUPPORT #if NAZARA_NETWORK_POLL_SUPPORT
return m_allSockets.count(socket) != 0; return m_allSockets.count(socket) != 0;
#else #else
return FD_ISSET(socket, &m_readSockets) != 0 || // FD_ISSET is not const-correct
FD_ISSET(socket, &m_writeSockets) != 0; return FD_ISSET(socket, const_cast<fd_set*>(&m_readSockets)) != 0 ||
FD_ISSET(socket, const_cast<fd_set*>(&m_writeSockets)) != 0;
#endif #endif
} }