X-Git-Url: https://www.tinc-vpn.org/git/browse?p=tinc;a=blobdiff_plain;f=src%2Fmingw%2Fdevice.c;h=d90c69b0244622138422390c110ba7b3e7ea4c0e;hp=49d0cd341c8229785bd67035fa69c17d4259ff56;hb=7bf4d225a994d8ce9fb45d42afd53793c4232e8e;hpb=43cf631bc10097448db041639ad07f84f647017e diff --git a/src/mingw/device.c b/src/mingw/device.c index 49d0cd34..d90c69b0 100644 --- a/src/mingw/device.c +++ b/src/mingw/device.c @@ -54,6 +54,8 @@ static void device_issue_read() { int status; for(;;) { + ResetEvent(device_read_overlapped.hEvent); + DWORD len; status = ReadFile(device_handle, (void *)device_read_packet.data, MTU, &len, &device_read_overlapped); @@ -72,10 +74,7 @@ static void device_issue_read() { } static void device_handle_read(void *data, int flags) { - ResetEvent(device_read_overlapped.hEvent); - DWORD len; - if(!GetOverlappedResult(device_handle, &device_read_overlapped, &len, FALSE)) { logger(DEBUG_ALWAYS, LOG_ERR, "Error getting read result from %s %s: %s", device_info, device, strerror(errno));