aboutsummaryrefslogtreecommitdiff
path: root/gdb/win32-nat.c
diff options
context:
space:
mode:
authorChristopher Faylor <me+cygwin@cgf.cx>2001-10-11 01:55:58 +0000
committerChristopher Faylor <me+cygwin@cgf.cx>2001-10-11 01:55:58 +0000
commit700b351bda2ac5430482a63fa1efd2f68540a4df (patch)
tree494fe40824f7abe800d68ac87271b567be765b17 /gdb/win32-nat.c
parentb58266b5a917aaf661188b8386cb0613a5703726 (diff)
downloadgdb-700b351bda2ac5430482a63fa1efd2f68540a4df.zip
gdb-700b351bda2ac5430482a63fa1efd2f68540a4df.tar.gz
gdb-700b351bda2ac5430482a63fa1efd2f68540a4df.tar.bz2
* win32-nat.c (get_child_debug_event): Close file handles created after process
creation and DLL load. (child_create_inferior): Close unneeded process/thread handle after thread creation.
Diffstat (limited to 'gdb/win32-nat.c')
-rw-r--r--gdb/win32-nat.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/win32-nat.c b/gdb/win32-nat.c
index 4113f2c..83749b1 100644
--- a/gdb/win32-nat.c
+++ b/gdb/win32-nat.c
@@ -868,6 +868,7 @@ get_child_debug_event (int pid ATTRIBUTE_UNUSED, struct target_waitstatus *ourst
(unsigned) current_event.dwProcessId,
(unsigned) current_event.dwThreadId,
"CREATE_PROCESS_DEBUG_EVENT"));
+ CloseHandle (current_event.u.CreateProcessInfo.hFile);
current_process_handle = current_event.u.CreateProcessInfo.hProcess;
main_thread_id = current_event.dwThreadId;
@@ -897,6 +898,7 @@ get_child_debug_event (int pid ATTRIBUTE_UNUSED, struct target_waitstatus *ourst
(unsigned) current_event.dwProcessId,
(unsigned) current_event.dwThreadId,
"LOAD_DLL_DEBUG_EVENT"));
+ CloseHandle (current_event.u.LoadDll.hFile);
catch_errors (handle_load_dll, NULL, (char *) "", RETURN_MASK_ALL);
registers_changed (); /* mark all regs invalid */
ourstatus->kind = TARGET_WAITKIND_LOADED;
@@ -1207,6 +1209,8 @@ child_create_inferior (char *exec_file, char *allargs, char **env)
if (!ret)
error ("Error creating process %s, (error %d)\n", exec_file, GetLastError ());
+ CloseHandle (pi.hThread);
+ CloseHandle (pi.hProcess);
do_initial_child_stuff (pi.dwProcessId);
/* child_continue (DBG_CONTINUE, -1); */