diff options
author | Andrew Cagney <cagney@redhat.com> | 2003-02-06 01:19:12 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2003-02-06 01:19:12 +0000 |
commit | 4389a95abbef3cf59d29e0fe15458335a0b3f0ab (patch) | |
tree | 8551c07e6de03f1cf9cdc9df764a873d696dda07 /gdb/event-top.c | |
parent | 0667fdb0c6b70b1e9712c6bf837e77a60ba40904 (diff) | |
download | gdb-4389a95abbef3cf59d29e0fe15458335a0b3f0ab.zip gdb-4389a95abbef3cf59d29e0fe15458335a0b3f0ab.tar.gz gdb-4389a95abbef3cf59d29e0fe15458335a0b3f0ab.tar.bz2 |
2003-02-05 Jim Ingham <jingham@apple.com>
Keith Seitz <keiths@redhat.com>
Elena Zannoni <ezannoni@redhat.com>
Andrew Cagney <ac131313@redhat.com>
* Makefile.in (SUBDIR_CLI_OBS): Add "cli-interp.o".
(SUBDIR_CLI_SRCS): Add "cli/cli-interp.c".
(SUBDIR_MI_OBS): Add "mi-interp.o".
(SUBDIR_MI_SRCS): Add "mi/mi-interp.c".
(SFILES): Add "interps.c".
(COMMON_OBS): Add "interps.o".
(interps_h, mi_main_h): Define.
(interps.o, cli-interp.o, mi-interp.o): Add dependencies.
(mi-main.o, main.o, event-top.o): Update dependencies.
* cli/cli-interp.c: New file.
* interps.h, interps.c: New files.
* top.c: (gdb_init): Don't install the default interpreter, handed
by captured_main.
* main.c: Include "interps.h".
(interpreter_p): Note that it should malloc'ed.
(captured_command_loop): Call current_interp_command_loop.
(captured_main): Initialize interpreter_p to INTERP_CONSOLE. Use
xfree and xstrdup when updating interpreter_p. Install the
default interpreter. Add hack to stop mi1's copyright notice
being encoded.
* event-top.h (gdb_setup_readline): Declare.
(gdb_disable_readline): Declare.
* event-top.c: Include "interps.h".
(display_gdb_prompt): Call current_interp_display_prompt_p.
(gdb_setup_readline): Initialize gdb_stdout, gdb_stderr,
gdb_stdlog, and gdb_stdtarg.
(_initialize_event_loop): Don't call gdb_setup_readline.
* cli-out.c (cli_out_set_stream): New function.
* cli-out.h (cli_out_set_stream): Declare.
Diffstat (limited to 'gdb/event-top.c')
-rw-r--r-- | gdb/event-top.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/gdb/event-top.c b/gdb/event-top.c index 8f39998..2b2c4ff 100644 --- a/gdb/event-top.c +++ b/gdb/event-top.c @@ -26,6 +26,7 @@ #include "terminal.h" /* for job_control */ #include "event-loop.h" #include "event-top.h" +#include "interps.h" #include <signal.h> /* For dont_repeat() */ @@ -250,9 +251,9 @@ display_gdb_prompt (char *new_prompt) int prompt_length = 0; char *gdb_prompt = get_prompt (); - /* When an alternative interpreter has been installed, do not - display the comand prompt. */ - if (interpreter_p) + /* Each interpreter has its own rules on displaying the command + prompt. */ + if (!current_interp_display_prompt_p ()) return; if (target_executing && sync_execution) @@ -1125,6 +1126,11 @@ gdb_setup_readline (void) if (event_loop_p) { + gdb_stdout = stdio_fileopen (stdout); + gdb_stderr = stdio_fileopen (stderr); + gdb_stdlog = gdb_stderr; /* for moment */ + gdb_stdtarg = gdb_stderr; /* for moment */ + /* If the input stream is connected to a terminal, turn on editing. */ if (ISATTY (instream)) @@ -1197,8 +1203,6 @@ gdb_disable_readline (void) 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) command_loop_hook = cli_command_loop; |