Date: Thu, 15 Dec 2011 06:25:19 +0000 (UTC) From: Max Khon <fjoe@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r228525 - head/usr.bin/make Message-ID: <201112150625.pBF6PJHg032865@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: fjoe Date: Thu Dec 15 06:25:19 2011 New Revision: 228525 URL: http://svn.freebsd.org/changeset/base/228525 Log: Revert r228521: sometimes job output is lost (see tools/regression/usr.bin/make/execution/joberr test). openpty(fd + 0, fd + 1,...) version does not have this problem but it sometimes enters an infinite sleep in "ttywait" state in tty_drain() when make(1) closes slave pty. Modified: head/usr.bin/make/Makefile head/usr.bin/make/job.c Modified: head/usr.bin/make/Makefile ============================================================================== --- head/usr.bin/make/Makefile Thu Dec 15 06:12:43 2011 (r228524) +++ head/usr.bin/make/Makefile Thu Dec 15 06:25:19 2011 (r228525) @@ -7,8 +7,6 @@ CFLAGS+=-I${.CURDIR} SRCS= arch.c buf.c cond.c dir.c for.c hash.c hash_tables.c job.c \ lst.c main.c make.c parse.c proc.c shell.c str.c suff.c targ.c \ util.c var.c -DPADD= ${LIBUTIL} -LDADD= -lutil NO_SHARED?= YES Modified: head/usr.bin/make/job.c ============================================================================== --- head/usr.bin/make/job.c Thu Dec 15 06:12:43 2011 (r228524) +++ head/usr.bin/make/job.c Thu Dec 15 06:25:19 2011 (r228525) @@ -115,7 +115,6 @@ __FBSDID("$FreeBSD$"); #include <fcntl.h> #include <inttypes.h> #include <limits.h> -#include <libutil.h> #include <paths.h> #include <string.h> #include <signal.h> @@ -1799,13 +1798,8 @@ JobStart(GNode *gn, int flags, Job *prev if (usePipes) { int fd[2]; - if (isatty(1)) { - if (openpty(fd + 1, fd + 0, NULL, NULL, NULL) == -1) - Punt("Cannot open pty: %s", strerror(errno)); - } else { - if (pipe(fd) == -1) - Punt("Cannot create pipe: %s", strerror(errno)); - } + if (pipe(fd) == -1) + Punt("Cannot create pipe: %s", strerror(errno)); job->inPipe = fd[0]; job->outPipe = fd[1]; fcntl(job->inPipe, F_SETFD, 1);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201112150625.pBF6PJHg032865>