From 47fd8112b5ad0e83d895e5be9342b70832ea3075 Mon Sep 17 00:00:00 2001 From: Ben Lindstrom Date: Tue, 2 Apr 2002 20:48:19 +0000 Subject: - markus@cvs.openbsd.org 2002/03/30 18:51:15 [monitor.c serverloop.c sftp-int.c sftp.c sshd.c] check waitpid for EINTR; based on patch from peter@ifm.liu.se --- monitor.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'monitor.c') diff --git a/monitor.c b/monitor.c index 7b4e53eb5..03f8dc74a 100644 --- a/monitor.c +++ b/monitor.c @@ -25,7 +25,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: monitor.c,v 1.8 2002/03/27 17:45:42 mouring Exp $"); +RCSID("$OpenBSD: monitor.c,v 1.9 2002/03/30 18:51:15 markus Exp $"); #include @@ -1211,8 +1211,9 @@ mm_answer_term(int socket, Buffer *req) /* The child is terminating */ session_destroy_all(&mm_session_close); - if (waitpid(monitor->m_pid, &status, 0) == -1) - exit(1); + while (waitpid(monitor->m_pid, &status, 0) == -1) + if (errno != EINTR) + exit(1); res = WIFEXITED(status) ? WEXITSTATUS(status) : 1; -- cgit v1.2.3