mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-11-03 20:53:13 +03:00 
			
		
		
		
	The overloading approach in the W* macros was incompatible with integer expressions of a type different from int. Applications using union wait and these macros will have to migrate to the POSIX-specified int status type.
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/* Copyright (C) 1991-2016 Free Software Foundation, Inc.
 | 
						|
   This file is part of the GNU C Library.
 | 
						|
 | 
						|
   The GNU C Library is free software; you can redistribute it and/or
 | 
						|
   modify it under the terms of the GNU Lesser General Public
 | 
						|
   License as published by the Free Software Foundation; either
 | 
						|
   version 2.1 of the License, or (at your option) any later version.
 | 
						|
 | 
						|
   The GNU C Library is distributed in the hope that it will be useful,
 | 
						|
   but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
						|
   Lesser General Public License for more details.
 | 
						|
 | 
						|
   You should have received a copy of the GNU Lesser General Public
 | 
						|
   License along with the GNU C Library; if not, see
 | 
						|
   <http://www.gnu.org/licenses/>.  */
 | 
						|
 | 
						|
#include <errno.h>
 | 
						|
#include <sys/wait.h>
 | 
						|
#include <sys/types.h>
 | 
						|
#include <stddef.h>
 | 
						|
 | 
						|
/* Wait for a child matching PID to die.
 | 
						|
   If PID is greater than 0, match any process whose process ID is PID.
 | 
						|
   If PID is (pid_t) -1, match any process.
 | 
						|
   If PID is (pid_t) 0, match any process with the
 | 
						|
   same process group as the current process.
 | 
						|
   If PID is less than -1, match any process whose
 | 
						|
   process group is the absolute value of PID.
 | 
						|
   If the WNOHANG bit is set in OPTIONS, and that child
 | 
						|
   is not already dead, return (pid_t) 0.  If successful,
 | 
						|
   return PID and store the dead child's status in STAT_LOC.
 | 
						|
   Return (pid_t) -1 for errors.  If the WUNTRACED bit is set in OPTIONS,
 | 
						|
   return status for stopped children; otherwise don't.  */
 | 
						|
pid_t
 | 
						|
__waitpid (pid_t pid, int *stat_loc, int options)
 | 
						|
{
 | 
						|
  return __wait4 (pid, stat_loc, options, NULL);
 | 
						|
}
 | 
						|
 | 
						|
libc_hidden_def (__waitpid)
 | 
						|
weak_alias (__waitpid, waitpid)
 |