From 586e8014f5d6a588f4614831b53c5d8d8efab4d2 Mon Sep 17 00:00:00 2001
From: John Hodge <tpg@ucc.gu.uwa.edu.au>
Date: Tue, 14 Jun 2011 23:42:29 +0800
Subject: [PATCH] Client - Fix to possible infinite loop in ReadLine

- If the remote host closes, recv() returns 0, this was not checked
 > Caused 100% CPU on motsugo when un in a backup script
---
 src/client/main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/client/main.c b/src/client/main.c
index f3ac712..bf22fab 100644
--- a/src/client/main.c
+++ b/src/client/main.c
@@ -2219,7 +2219,7 @@ char *ReadLine(int Socket)
 		}
 		else {
 			len = recv(Socket, buf+bufPos, BUFSIZ-1-bufPos, 0);
-			if( len < 0 ) {
+			if( len <= 0 ) {
 				free(ret);
 				return strdup("599 Client Connection Error\n");
 			}
-- 
GitLab