X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a12698abb72c090dba6907506781ae979b0ef606..ae901b234c4a0aa7c1777b3bd181dd7f8517ad21:/src/unix/epolldispatcher.cpp diff --git a/src/unix/epolldispatcher.cpp b/src/unix/epolldispatcher.cpp index b5b7a8cce6..7d751e8d57 100644 --- a/src/unix/epolldispatcher.cpp +++ b/src/unix/epolldispatcher.cpp @@ -42,8 +42,10 @@ // helper: return EPOLLxxx mask corresponding to the given flags (and also log // debugging messages about it) -static uint32_t GetEpollMask(int flags, int WXUNUSED_UNLESS_DEBUG(fd)) +static uint32_t GetEpollMask(int flags, int fd) { + wxUnusedVar(fd); // unused if wxLogTrace() disabled + uint32_t ep = 0; if ( flags & wxFDIO_INPUT ) @@ -194,7 +196,11 @@ wxEpollDispatcher::DoPoll(epoll_event *events, int numEvents, int timeout) const bool wxEpollDispatcher::HasPending() const { epoll_event event; - return DoPoll(&event, 1, 0) == 1; + + // NB: it's not really clear if epoll_wait() can return a number greater + // than the number of events passed to it but just in case it can, use + // >= instead of == here, see #10397 + return DoPoll(&event, 1, 0) >= 1; } int wxEpollDispatcher::Dispatch(int timeout)