2007-07-08 Pedro Alves * server.h (remote_connected): Declare. * remote-utils.c (remote_connected): Define. * win32-low.c (handle_output_debug_string): Don't send data to a non-existing remote. --- gdb/gdbserver/remote-utils.c | 6 ++++++ gdb/gdbserver/server.h | 2 ++ gdb/gdbserver/win32-low.c | 3 +++ 3 files changed, 11 insertions(+) Index: src/gdb/gdbserver/remote-utils.c =================================================================== --- src.orig/gdb/gdbserver/remote-utils.c 2007-07-08 00:58:26.000000000 +0100 +++ src/gdb/gdbserver/remote-utils.c 2007-07-08 01:04:38.000000000 +0100 @@ -1242,3 +1242,9 @@ xml_escape_text (const char *text) return result; } + +int +remote_connected (void) +{ + return (remote_desc != -1); +} Index: src/gdb/gdbserver/win32-low.c =================================================================== --- src.orig/gdb/gdbserver/win32-low.c 2007-07-08 00:52:44.000000000 +0100 +++ src/gdb/gdbserver/win32-low.c 2007-07-08 01:05:52.000000000 +0100 @@ -544,6 +544,9 @@ handle_output_debug_string (struct targe char s[READ_BUFFER_LEN + 1] = { 0 }; DWORD nbytes = current_event.u.DebugString.nDebugStringLength; + if (!remote_connected ()) + return; + if (nbytes == 0) return; Index: src/gdb/gdbserver/server.h =================================================================== --- src.orig/gdb/gdbserver/server.h 2007-07-08 01:01:06.000000000 +0100 +++ src/gdb/gdbserver/server.h 2007-07-08 01:04:54.000000000 +0100 @@ -205,6 +205,8 @@ void monitor_output (const char *msg); char *xml_escape_text (const char *text); +int remote_connected (void); + /* Functions from ``signals.c''. */ enum target_signal target_signal_from_host (int hostsig); int target_signal_to_host_p (enum target_signal oursig);