From 894d4cba108fff3501def2d4178b68b2c7fed203 Mon Sep 17 00:00:00 2001 From: Marius Greuel Date: Thu, 29 Dec 2022 15:35:20 +0100 Subject: [PATCH 1/2] Make WIN32 implementation of ser_recv() fail on time-out --- src/ser_win32.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ser_win32.c b/src/ser_win32.c index 16df6fe9..3f0c58db 100644 --- a/src/ser_win32.c +++ b/src/ser_win32.c @@ -589,7 +589,7 @@ static int ser_recv(const union filedescriptor *fd, unsigned char * buf, size_t } /* time out detected */ - if (read == 0) { + if (read < buflen) { pmsg_notice2("ser_recv(): programmer is not responding\n"); return -1; } From 161e25e8862d5dc3231052d8d0f5bee90251f8d5 Mon Sep 17 00:00:00 2001 From: Marius Greuel Date: Fri, 30 Dec 2022 12:13:36 +0100 Subject: [PATCH 2/2] Correct messages in WIN32 net_recv() --- src/ser_win32.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ser_win32.c b/src/ser_win32.c index 3f0c58db..3c81571c 100644 --- a/src/ser_win32.c +++ b/src/ser_win32.c @@ -486,12 +486,12 @@ reselect: nfds = select(fd->ifd + 1, &rfds, NULL, NULL, &to2); if (nfds == 0) { if (verbose > 1) { - pmsg_notice("ser_recv(): programmer is not responding\n"); + pmsg_notice("net_recv(): programmer is not responding\n"); } return -1; } else if (nfds == -1) { if (WSAGetLastError() == WSAEINTR || WSAGetLastError() == WSAEINPROGRESS) { - pmsg_notice("ser_recv(): programmer is not responding, reselecting\n"); + pmsg_notice("net_recv(): programmer is not responding, reselecting\n"); goto reselect; } else { FormatMessage(