diff options
author | Pedro Alves <palves@redhat.com> | 2009-07-04 18:13:28 +0000 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2009-07-04 18:13:28 +0000 |
commit | 912cf4ba32021ba75d11c496e9ffd17bbb15bc64 (patch) | |
tree | ed2725b4c7d136096eeca96b791ab0dcb2a79f7d /gdb/gdbserver/win32-low.c | |
parent | dd8f35ac84e9ae2bcd5bc75004b7e5312805843a (diff) | |
download | gdb-912cf4ba32021ba75d11c496e9ffd17bbb15bc64.zip gdb-912cf4ba32021ba75d11c496e9ffd17bbb15bc64.tar.gz gdb-912cf4ba32021ba75d11c496e9ffd17bbb15bc64.tar.bz2 |
* win32-i386-low.c (i386_get_thread_context): Handle systems that
don't support CONTEXT_EXTENDED_REGISTERS.
(i386_win32_breakpoint, i386_win32_breakpoint_len): New.
(the_low_target): Install them.
* win32-low.c (get_child_debug_event): Handle WaitForDebugEvent
failing with ERROR_PIPE_NOT_CONNECTED.
Diffstat (limited to 'gdb/gdbserver/win32-low.c')
-rw-r--r-- | gdb/gdbserver/win32-low.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/gdb/gdbserver/win32-low.c b/gdb/gdbserver/win32-low.c index a1380f6..bcf16b2 100644 --- a/gdb/gdbserver/win32-low.c +++ b/gdb/gdbserver/win32-low.c @@ -1407,7 +1407,22 @@ get_child_debug_event (struct target_waitstatus *ourstatus) interruption, but high enough so gdbserver doesn't become a bottleneck. */ if (!WaitForDebugEvent (¤t_event, 250)) - return 0; + { + DWORD e = GetLastError(); + + if (e == ERROR_PIPE_NOT_CONNECTED) + { + /* This will happen if the loader fails to succesfully + load the application, e.g., if the main executable + tries to pull in a non-existing export from a + DLL. */ + ourstatus->kind = TARGET_WAITKIND_EXITED; + ourstatus->value.integer = 1; + return 1; + } + + return 0; + } } gotevent: |