From 2ecbfa371fdab5e5b5dbeb1481ca05a0c9ce19fc Mon Sep 17 00:00:00 2001 From: florian Date: Mon, 21 Oct 2013 18:17:58 +0000 Subject: Check for EINTR, too. pointed out by deraadt@ --- slowcgi.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/slowcgi.c b/slowcgi.c index a7122db..a0c0aec 100644 --- a/slowcgi.c +++ b/slowcgi.c @@ -1,4 +1,4 @@ -/* $OpenBSD: slowcgi.c,v 1.21 2013/10/21 18:16:28 florian Exp $ */ +/* $OpenBSD: slowcgi.c,v 1.22 2013/10/21 18:17:58 florian Exp $ */ /* * Copyright (c) 2013 David Gwynne * Copyright (c) 2013 Florian Obser @@ -537,7 +537,7 @@ slowcgi_response(int fd, short events, void *arg) n = write(fd, resp->data + resp->data_pos, resp->data_len); if (n == -1) { - if (errno == EAGAIN) + if (errno == EAGAIN || errno == EINTR) return; cleanup_request(c); return; @@ -998,7 +998,7 @@ script_out(int fd, short events, void *arg) } n = write(fd, node->data + node->data_pos, node->data_len); if (n == -1) { - if (errno == EAGAIN) + if (errno == EAGAIN || errno == EINTR) return; event_del(&c->script_stdin_ev); return; -- cgit v1.2.3-2-gb3c3