summaryrefslogtreecommitdiffstats
path: root/usr.bin/make
diff options
context:
space:
mode:
authorgreen <green@FreeBSD.org>2004-04-20 22:04:12 +0000
committergreen <green@FreeBSD.org>2004-04-20 22:04:12 +0000
commit2f31d4ad3c6b94274bb8e55535e7bc9f9004cd9f (patch)
tree5e6fce3dfe57abba541ee04e2663cb70c27f4cca /usr.bin/make
parentdddaa5bce945b470ddb2cfbf3dd6cf61c3751dda (diff)
downloadFreeBSD-src-2f31d4ad3c6b94274bb8e55535e7bc9f9004cd9f.zip
FreeBSD-src-2f31d4ad3c6b94274bb8e55535e7bc9f9004cd9f.tar.gz
Treat kevent(2) returning an error EINTR as the non-error it is.
Diffstat (limited to 'usr.bin/make')
-rw-r--r--usr.bin/make/job.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/usr.bin/make/job.c b/usr.bin/make/job.c
index 59f3ec9..4f43e7f 100644
--- a/usr.bin/make/job.c
+++ b/usr.bin/make/job.c
@@ -1263,7 +1263,7 @@ JobExec(Job *job, char **argv)
NOTE_EXIT, 0, NULL);
if (kevent(kqfd, kev, 2, NULL, 0, NULL) != 0) {
/* kevent() will fail if the job is already finished */
- if (errno != EBADF && errno != ESRCH)
+ if (errno != EINTR && errno != EBADF && errno != ESRCH)
Punt("kevent: %s", strerror(errno));
}
#else
@@ -2250,7 +2250,8 @@ Job_CatchOutput(void)
if (usePipes) {
#ifdef USE_KQUEUE
if ((nfds = kevent(kqfd, NULL, 0, kev, KEV_SIZE, NULL)) == -1) {
- Punt("kevent: %s", strerror(errno));
+ if (errno != EINTR)
+ Punt("kevent: %s", strerror(errno));
} else {
for (i = 0; i < nfds; i++) {
if (kev[i].flags & EV_ERROR) {
OpenPOWER on IntegriCloud