diff options
author | Christopher Faylor <me+cygwin@cgf.cx> | 2001-10-11 01:55:58 +0000 |
---|---|---|
committer | Christopher Faylor <me+cygwin@cgf.cx> | 2001-10-11 01:55:58 +0000 |
commit | 76378ef5e227152f770927366c044653e82916ee (patch) | |
tree | 4a451713e2b126f6f91ab410211d4c2bb9f391c6 /gdb/win32-nat.c | |
parent | 44a0fd2981cce75659088818e12870dbca1cd93c (diff) | |
download | gdb-76378ef5e227152f770927366c044653e82916ee.tar.gz |
* 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.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/win32-nat.c b/gdb/win32-nat.c index 4113f2c69f6..83749b12945 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); */ |