From e0e6bcab5971ea4ad7c4f2efa5c8164c8383caf6 Mon Sep 17 00:00:00 2001 From: Gary Benson Date: Mon, 4 Aug 2014 14:03:21 +0100 Subject: [PATCH] Replace hardwired error handlers in tui_initialize_io tui_initialize_io contains a pair of hardwired fprintf/exit error handlers. I was unable to find any documentation as to why they're hardwired (the code appeared in a monolithic block back in 2001: https://sourceware.org/ml/gdb-patches/2001-07/msg00490.html) and I was also unable to come up with a situation where error would not be suitable, so I have replaced both handlers with calls to error. gdb/ChangeLog: * tui/tui-io.c (tui_initialize_io): Replace two fprintf/exit pairs with calls to error. Wrap the message with _(). --- gdb/ChangeLog | 5 +++++ gdb/tui/tui-io.c | 12 ++++-------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 9f02aad..809afe5 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2014-08-29 Gary Benson + * tui/tui-io.c (tui_initialize_io): Replace two fprintf/exit + pairs with calls to error. Wrap the message with _(). + +2014-08-29 Gary Benson + * utils.c (vwarning): Protect calls to target_terminal_ours and wrap_here. diff --git a/gdb/tui/tui-io.c b/gdb/tui/tui-io.c index a890678..601d278 100644 --- a/gdb/tui/tui-io.c +++ b/gdb/tui/tui-io.c @@ -616,16 +616,12 @@ tui_initialize_io (void) readline output in a pipe, read that pipe and output the content in the curses command window. */ if (gdb_pipe_cloexec (tui_readline_pipe) != 0) - { - fprintf_unfiltered (gdb_stderr, "Cannot create pipe for readline"); - exit (1); - } + error (_("Cannot create pipe for readline")); + tui_rl_outstream = fdopen (tui_readline_pipe[1], "w"); if (tui_rl_outstream == 0) - { - fprintf_unfiltered (gdb_stderr, "Cannot redirect readline output"); - exit (1); - } + error (_("Cannot redirect readline output")); + setvbuf (tui_rl_outstream, (char*) NULL, _IOLBF, 0); #ifdef O_NONBLOCK -- 2.7.4