From owner-svn-src-head@FreeBSD.ORG Sat Jul 28 14:56:50 2012 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id BD0391065670; Sat, 28 Jul 2012 14:56:50 +0000 (UTC) (envelope-from jilles@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id A81C88FC08; Sat, 28 Jul 2012 14:56:50 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q6SEuoEG037640; Sat, 28 Jul 2012 14:56:50 GMT (envelope-from jilles@svn.freebsd.org) Received: (from jilles@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q6SEuofL037638; Sat, 28 Jul 2012 14:56:50 GMT (envelope-from jilles@svn.freebsd.org) Message-Id: <201207281456.q6SEuofL037638@svn.freebsd.org> From: Jilles Tjoelker Date: Sat, 28 Jul 2012 14:56:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r238866 - head/bin/sh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Jul 2012 14:56:50 -0000 Author: jilles Date: Sat Jul 28 14:56:50 2012 New Revision: 238866 URL: http://svn.freebsd.org/changeset/base/238866 Log: sh: Inline waitproc() into its only caller. Modified: head/bin/sh/jobs.c Modified: head/bin/sh/jobs.c ============================================================================== --- head/bin/sh/jobs.c Sat Jul 28 14:32:55 2012 (r238865) +++ head/bin/sh/jobs.c Sat Jul 28 14:56:50 2012 (r238866) @@ -94,7 +94,6 @@ static void freejob(struct job *); static struct job *getjob(char *); pid_t getjobpgrp(char *); static pid_t dowait(int, struct job *); -static pid_t waitproc(int, int *); static void checkzombies(void); static void cmdtxt(union node *); static void cmdputs(const char *); @@ -1021,10 +1020,18 @@ dowait(int block, struct job *job) int stopped; int sig; int coredump; + int wflags; TRACE(("dowait(%d) called\n", block)); do { - pid = waitproc(block, &status); +#if JOBS + wflags = WUNTRACED | WCONTINUED; +#else + wflags = 0; +#endif + if (block == 0) + wflags |= WNOHANG; + pid = wait3(&status, wflags, (struct rusage *)NULL); TRACE(("wait returns %d, status=%d\n", (int)pid, status)); } while ((pid == -1 && errno == EINTR && breakwaitcmd == 0) || (pid > 0 && (WIFSTOPPED(status) || WIFCONTINUED(status)) && @@ -1113,26 +1120,6 @@ dowait(int block, struct job *job) /* - * Do a wait system call. If job control is compiled in, we accept - * stopped processes. If block is zero, we return a value of zero - * rather than blocking. - */ -static pid_t -waitproc(int block, int *status) -{ - int flags; - -#if JOBS - flags = WUNTRACED | WCONTINUED; -#else - flags = 0; -#endif - if (block == 0) - flags |= WNOHANG; - return wait3(status, flags, (struct rusage *)NULL); -} - -/* * return 1 if there are stopped jobs, otherwise 0 */ int job_warning = 0;