From 1eef0b33c6b33d9bc6fcce784b34599931256a36 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Tue, 26 Jul 2005 13:26:52 -0700 Subject: daemon.c: squelch error message from EINTR Every time after servicing the connection, select() first fails with EINTR and ends up waiting for one second before serving the next client. The sleep() was placed by the original author per suggestion from the list to avoid spinning on failing select, but at least this EINTR situation should not result in "at most one client per second" service limit. I am not sure if this is the right fix, but WTH. The king penguin says that serious people would run the daemon under inetd anyway, and I agree with that. Signed-off-by: Junio C Hamano --- daemon.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/daemon.c b/daemon.c index b7d60918eb..932d908bad 100644 --- a/daemon.c +++ b/daemon.c @@ -294,8 +294,11 @@ static int serve(int port) fds = fds_init; if (select(maxfd + 1, &fds, NULL, NULL, NULL) < 0) { - error("select failed, resuming: %s", strerror(errno)); - sleep(1); + if (errno != EINTR) { + error("select failed, resuming: %s", + strerror(errno)); + sleep(1); + } continue; } -- cgit v1.2.1