summaryrefslogtreecommitdiff
path: root/src/libstddjb/waitpid_nointr.c
blob: 8c6a65ea12b24e440725fef60b9868f416ac364c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* ISC license. */

#include <sys/types.h>
#include <sys/wait.h>
#include <errno.h>
#include <skalibs/djbunix.h>

pid_t waitpid_nointr (pid_t pid, int *wstat, int flags)
{
  register pid_t r ;
  do
    r = waitpid(pid, wstat, flags) ;
  while ((r == (pid_t)-1) && (errno == EINTR)) ;
  return r ;
}