httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From stodd...@hyperreal.org
Subject cvs commit: apache-2.0/src/lib/apr/threadproc/win32 proc.c
Date Fri, 28 Jan 2000 04:22:02 GMT
stoddard    00/01/27 20:22:01

  Modified:    src/lib/apr/lib apr_pools.c
               src/lib/apr/threadproc/win32 proc.c
  Log:
  Fix bug in Win32 ap_get_os_proc() (it was already fixed in the Unix side...).
  Close process handle in free_proc_chain.
  
  Revision  Changes    Path
  1.31      +9 -6      apache-2.0/src/lib/apr/lib/apr_pools.c
  
  Index: apr_pools.c
  ===================================================================
  RCS file: /home/cvs/apache-2.0/src/lib/apr/lib/apr_pools.c,v
  retrieving revision 1.30
  retrieving revision 1.31
  diff -u -r1.30 -r1.31
  --- apr_pools.c	2000/01/28 03:10:52	1.30
  +++ apr_pools.c	2000/01/28 04:21:55	1.31
  @@ -1310,13 +1310,16 @@
   	}
       }
   #ifdef WIN32
  -    /* Humm, still trying to understand what to do about this.
  +    /* 
        * Do we need an APR function to clean-up a proc_t?
  -     * We have a handle leak here until this is fixed.
  -     for (p = procs; p; p = p->next) {
  -         CloseHandle(p->pid->pi.hProcess);
  -     }
  -    */
  +     */
  +    {
  +        PROCESS_INFORMATION pi;
  +        for (p = procs; p; p = p->next) {
  +            ap_get_os_proc(&pi, p->pid);
  +            CloseHandle(pi.hProcess);
  +        }
  +    }
   #endif /* WIN32 */
   
       /* Now wait for all the signaled processes to die */
  
  
  
  1.16      +2 -3      apache-2.0/src/lib/apr/threadproc/win32/proc.c
  
  Index: proc.c
  ===================================================================
  RCS file: /home/cvs/apache-2.0/src/lib/apr/threadproc/win32/proc.c,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- proc.c	2000/01/28 02:24:15	1.15
  +++ proc.c	2000/01/28 04:21:59	1.16
  @@ -105,7 +105,7 @@
                                      attr->cntxt)) != APR_SUCCESS) {
               return stat;
           }
  -    } 
  +    }
       if (err) {
           if ((stat = ap_create_pipe(&attr->parent_err, &attr->child_err, 
                                      attr->cntxt)) != APR_SUCCESS) {
  @@ -122,7 +122,6 @@
   ap_status_t ap_setprocattr_childout(struct procattr_t *attr, ap_file_t *child_out,
                                       ap_file_t *parent_out)
   {
  -
       if (attr->child_out == NULL && attr->parent_out == NULL)
           ap_create_pipe(&attr->child_out, &attr->parent_out, attr->cntxt);
   
  @@ -451,7 +450,7 @@
       if (proc == NULL) {
           return APR_ENOPROC;
       }
  -    theproc = &(proc->pi);
  +    *theproc = proc->pi;
       return APR_SUCCESS;
   }
   
  
  
  

Mime
View raw message