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]

[commit/obish] Fix cntrl-z


Hello,

The attatched gets rid of the immediate problem of cntrl-z not working. When async, it calls cli_command_loop. Thanks to mark for analyzing the problem.

It should eventually be called via the CLI interpreter's command loop but that can follow. This is to get over the immediate problem (and hey, while we're at it, eliminate a reference to the global command_loop_hook).

committed,
Andrew

PS: The TUI also appears to have also suffered in the fallout :-(
2003-02-12  Andrew Cagney  <ac131313@redhat.com>

	* event-top.c (cli_command_loop): Delete declaration.
	(_initialize_event_loop): Delete function setting event_loop_hook.
	* event-top.h (cli_command_loop): Declare.  Update copyright.
	(EVENT_TOP_H): Define.  Wrap header in #ifdef EVENT_TOP_H.
	* interps.c (current_interp_command_loop): When event_loop_p, call
	cli_command_loop.

Index: event-top.c
===================================================================
RCS file: /cvs/src/src/gdb/event-top.c,v
retrieving revision 1.25
diff -u -r1.25 event-top.c
--- event-top.c	6 Feb 2003 01:19:12 -0000	1.25
+++ event-top.c	12 Feb 2003 15:26:19 -0000
@@ -39,15 +39,12 @@
 /* readline defines this.  */
 #undef savestring
 
-extern void _initialize_event_loop (void);
-
 static void rl_callback_read_char_wrapper (gdb_client_data client_data);
 static void command_line_handler (char *rl);
 static void command_line_handler_continuation (struct continuation_arg *arg);
 static void change_line_handler (void);
 static void change_annotation_level (void);
 static void command_handler (char *command);
-void cli_command_loop (void);
 static void async_do_nothing (gdb_client_data arg);
 static void async_disconnect (gdb_client_data arg);
 static void async_stop_sig (gdb_client_data arg);
@@ -1199,12 +1196,3 @@
       delete_file_handler (input_fd);
     }
 }
-
-void
-_initialize_event_loop (void)
-{
-  /* 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;
-}
-
Index: event-top.h
===================================================================
RCS file: /cvs/src/src/gdb/event-top.h,v
retrieving revision 1.5
diff -u -r1.5 event-top.h
--- event-top.h	6 Feb 2003 01:19:12 -0000	1.5
+++ event-top.h	12 Feb 2003 15:26:19 -0000
@@ -1,5 +1,7 @@
-/* Definitions used by GDB event-top.c.
-   Copyright 1999, 2001 Free Software Foundation, Inc.
+/* Definitions used by event-top.c, for GDB, the GNU debugger.
+
+   Copyright 1999, 2001, 2003 Free Software Foundation, Inc.
+
    Written by Elena Zannoni <ezannoni@cygnus.com> of Cygnus Solutions.
 
    This file is part of GDB.
@@ -19,6 +21,9 @@
    Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.  */
 
+#ifndef EVENT_TOP_H
+#define EVENT_TOP_H
+
 /* Stack for prompts.  Each prompt is composed as a prefix, a prompt
    and a suffix.  The prompt to be displayed at any given time is the
    one on top of the stack.  A stack is necessary because of cases in
@@ -111,3 +116,7 @@
 extern void (*input_handler) (char *);
 extern int input_fd;
 extern void (*after_char_processing_hook) (void);
+
+extern void cli_command_loop (void);
+
+#endif
Index: interps.c
===================================================================
RCS file: /cvs/src/src/gdb/interps.c,v
retrieving revision 1.3
diff -u -r1.3 interps.c
--- interps.c	9 Feb 2003 10:47:37 -0000	1.3
+++ interps.c	12 Feb 2003 15:26:19 -0000
@@ -275,6 +275,8 @@
   else if (current_interpreter != NULL
 	   && current_interpreter->procs->command_loop_proc != NULL)
     current_interpreter->procs->command_loop_proc (current_interpreter->data);
+  else if (event_loop_p)
+    cli_command_loop ();
   else
     command_loop ();
 }

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