diff options
author | stoddard <stoddard@13f79535-47bb-0310-9956-ffa450edef68> | 2000-01-28 04:21:59 +0000 |
---|---|---|
committer | stoddard <stoddard@13f79535-47bb-0310-9956-ffa450edef68> | 2000-01-28 04:21:59 +0000 |
commit | 2069ff656d23103d3a763828c31d9f623cbe811d (patch) | |
tree | 11a0208fd6c99cfecc99f54fb3b8e13bfce7141f /memory | |
parent | c4c4d36e4e5d7e3378a64824087130e2ef9b8c3a (diff) | |
download | libapr-2069ff656d23103d3a763828c31d9f623cbe811d.tar.gz |
Fix bug in Win32 ap_get_os_proc() (it was already fixed in the Unix side...).
Close process handle in free_proc_chain.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@59630 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'memory')
-rw-r--r-- | memory/unix/apr_pools.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/memory/unix/apr_pools.c b/memory/unix/apr_pools.c index 7cdccded0..12fec3d85 100644 --- a/memory/unix/apr_pools.c +++ b/memory/unix/apr_pools.c @@ -1310,13 +1310,16 @@ static void free_proc_chain(struct process_chain *procs) } } #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 */ |