This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[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;
 }



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]