From: Todd C. Miller Date: Tue, 23 Jan 2018 22:57:58 +0000 (-0700) Subject: WSAEVENT is a pointer, so we cannot simply return the different of two X-Git-Tag: release-1.1pre16~29 X-Git-Url: https://tinc-vpn.org/git/browse?a=commitdiff_plain;h=5ec513ec0ffc735e30c559a03378659ba4cc4515;p=tinc WSAEVENT is a pointer, so we cannot simply return the different of two events in io_compare(), which returns an int. This can return the wrong result for 64-bit executables. --- diff --git a/src/event.c b/src/event.c index 5edd3a6d..84b18b3d 100644 --- a/src/event.c +++ b/src/event.c @@ -41,7 +41,13 @@ static int io_compare(const io_t *a, const io_t *b) { #ifndef HAVE_MINGW return a->fd - b->fd; #else - return a->event - b->event; + if(a->event < b->event) { + return -1; + } + if(a->event > b->event) { + return 1; + } + return 0; #endif }