From 277226c65d249ec0c7f86eb4d1a0682ab7b3a06c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BA=90=E6=96=87=E9=9B=A8?= <41315874+fumiama@users.noreply.github.com> Date: Fri, 25 Nov 2022 13:04:44 +0800 Subject: [PATCH] fix --- server.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/server.c b/server.c index 6ac4459..07ddbe1 100644 --- a/server.c +++ b/server.c @@ -355,13 +355,15 @@ static int handle_accept(threadtimer_t* p) { break; } if((p)->numbytes <= 0) { - perror("recv"); if(errno == EAGAIN || errno == EINVAL) { if(!++(p)->again_cnt) { r = 0; puts("Max EAGAIN/EINVAL cnt exceeded"); } - } else r = 0; + } else if(errno) { + perror("recv"); + r = 0; + } } printf("Recv finished, remain: %zd, continue: %s\n", (p)->numbytes, r?"true":"false"); return r;