You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by dr...@locus.apache.org on 2000/06/12 15:00:07 UTC

cvs commit: apache-2.0/src/lib/apr/threadproc/beos proc.c

dreid       00/06/12 06:00:07

  Modified:    src/lib/apr/threadproc/beos proc.c
  Log:
  This gets BeOS working again but I need to look at the whole
  business of waitpid and so on.
  
  Revision  Changes    Path
  1.26      +18 -0     apache-2.0/src/lib/apr/threadproc/beos/proc.c
  
  Index: proc.c
  ===================================================================
  RCS file: /home/cvs/apache-2.0/src/lib/apr/threadproc/beos/proc.c,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- proc.c	2000/06/01 18:45:11	1.25
  +++ proc.c	2000/06/12 13:00:05	1.26
  @@ -267,6 +267,24 @@
       return APR_SUCCESS;
   }
   
  +ap_status_t ap_wait_all_procs(ap_proc_t *proc, ap_wait_t *status,
  +                              ap_wait_how_e waithow, ap_pool_t *p)
  +{
  +    int waitpid_options = WUNTRACED;
  +
  +    if (waithow != APR_WAIT) {
  +        waitpid_options |= WNOHANG;
  +    }
  +
  +    if ((proc->pid = waitpid(-1, status, waitpid_options)) > 0) {
  +        return APR_CHILD_DONE;
  +    }
  +    else if (proc->pid == 0) {
  +        return APR_CHILD_NOTDONE;
  +    }
  +    return errno;
  +} 
  +
   ap_status_t ap_wait_proc(ap_proc_t *proc, 
                              ap_wait_how_e wait)
   {