diff --git a/src/Nazara/Network/Linux/SocketPollerImpl.cpp b/src/Nazara/Network/Linux/SocketPollerImpl.cpp index fb6321709..ec6b8235e 100644 --- a/src/Nazara/Network/Linux/SocketPollerImpl.cpp +++ b/src/Nazara/Network/Linux/SocketPollerImpl.cpp @@ -4,6 +4,7 @@ #include #include +#include #include #include #include @@ -75,6 +76,13 @@ namespace Nz std::memset(m_events.data(), 0, m_events.size() * sizeof(epoll_event)); activeSockets = epoll_wait(m_handle, m_events.data(), static_cast(m_events.size()), static_cast(msTimeout)); + if (activeSockets == -1) + { + if (error) + *error = SocketImpl::TranslateErrnoToResolveError(errno); + + return 0; + } m_activeSockets.clear(); if (activeSockets > 0U) @@ -96,6 +104,9 @@ namespace Nz } } + if (error) + *error = SocketError_NoError; + return activeSockets; } } diff --git a/src/Nazara/Network/Linux/SocketPollerImpl.hpp b/src/Nazara/Network/Linux/SocketPollerImpl.hpp index a6c5ad9f8..1c54471fc 100644 --- a/src/Nazara/Network/Linux/SocketPollerImpl.hpp +++ b/src/Nazara/Network/Linux/SocketPollerImpl.hpp @@ -9,7 +9,6 @@ #include #include -#include #include #include #include