From 7d5b6fdd3bcba79509e2d2dcc04f49a85534670b Mon Sep 17 00:00:00 2001 From: Elena Zannoni Date: Tue, 5 Nov 2002 22:38:11 +0000 Subject: [PATCH] 2002-11-05 Elena Zannoni From Jim Ingham : * event-top.c (gdb_disable_readline): New function. (_initialize_event_loop): Move comment. --- gdb/ChangeLog | 6 ++++++ gdb/event-top.c | 33 +++++++++++++++++++++++++++++---- 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 87efdd46729..dc7f7eb03a9 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -18,6 +18,12 @@ (frame_register_read): Use frame_register instead of get_saved_register. +2002-11-05 Elena Zannoni + + From Jim Ingham : + * event-top.c (gdb_disable_readline): New function. + (_initialize_event_loop): Move comment. + 2002-11-05 Elena Zannoni * event-loop.c (start_event_loop): Add comment. diff --git a/gdb/event-top.c b/gdb/event-top.c index 9d871d65906..8f39998ed9b 100644 --- a/gdb/event-top.c +++ b/gdb/event-top.c @@ -1168,14 +1168,39 @@ gdb_setup_readline (void) } } +/* Disable command input through the standard CLI channels. Used in + the suspend proc for interpreters that use the standard gdb readline + interface, like the cli & the mi. */ +void +gdb_disable_readline (void) +{ + if (event_loop_p) + { + /* FIXME - It is too heavyweight to delete and remake these + every time you run an interpreter that needs readline. + It is probably better to have the interpreters cache these, + which in turn means that this needs to be moved into interpreter + specific code. */ + +#if 0 + ui_file_delete (gdb_stdout); + ui_file_delete (gdb_stderr); + gdb_stdlog = NULL; + gdb_stdtarg = NULL; +#endif + + rl_callback_handler_remove (); + delete_file_handler (input_fd); + } +} + void _initialize_event_loop (void) { gdb_setup_readline (); + /* Tell gdb to use the cli_command_loop as the main loop. */ if (event_loop_p && command_loop_hook == NULL) - { - /* Tell gdb to use the cli_command_loop as the main loop. */ - command_loop_hook = cli_command_loop; - } + command_loop_hook = cli_command_loop; } + -- 2.30.2