This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[PATCH] event-top.c mini MI merge
- From: Elena Zannoni <ezannoni at redhat dot com>
- To: gdb-patches at sources dot redhat dot com
- Date: Tue, 5 Nov 2002 17:32:16 -0500
- Subject: [PATCH] event-top.c mini MI merge
Another little thing from the MI branch.
This function is used when swapping between interpreters.
Elena
2002-11-05 Elena Zannoni <ezannoni@redhat.com>
From Jim Ingham <jingham@apple.com>:
* event-top.c (gdb_disable_readline): New function.
(_initialize_event_loop): Move comment.
Index: event-top.c
===================================================================
RCS file: /cvs/uberbaum/gdb/event-top.c,v
retrieving revision 1.23
diff -u -p -r1.23 event-top.c
--- event-top.c 3 Oct 2002 01:23:50 -0000 1.23
+++ event-top.c 5 Nov 2002 22:16:55 -0000
@@ -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;
}