aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbserver/linux-low.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/gdbserver/linux-low.c')
-rw-r--r--gdb/gdbserver/linux-low.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c
index 8810285..62d1fb8 100644
--- a/gdb/gdbserver/linux-low.c
+++ b/gdb/gdbserver/linux-low.c
@@ -4713,8 +4713,16 @@ sigchld_handler (int signo)
int old_errno = errno;
if (debug_threads)
- /* fprintf is not async-signal-safe, so call write directly. */
- write (2, "sigchld_handler\n", sizeof ("sigchld_handler\n") - 1);
+ {
+ do
+ {
+ /* fprintf is not async-signal-safe, so call write
+ directly. */
+ if (write (2, "sigchld_handler\n",
+ sizeof ("sigchld_handler\n") - 1) < 0)
+ break; /* just ignore */
+ } while (0);
+ }
if (target_is_async_p ())
async_file_mark (); /* trigger a linux_wait */