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] Don't save/restore pre_print strings


The current code doesn't make use of it.

(note that there are several files that still manipulate the error_pre_print and quit_pre_print strings. Whatever features that code implemented is clearly not convered by the testsuite, I'll investigate next)

Andrew
2005-01-16  Andrew Cagney  <cagney@gnu.org>

	* exceptions.c (struct catcher): Delete saved_error_pre_print and
	saved_quit_pre_print.
	(catcher_init): Delete parameter errstring, do not override the
	pre_print strings.
	(catcher_pop): Do not restore the pre_print strings.
	(catch_exception, catch_exceptions_with_msg, catch_errors)
	(catch_command_errors): Update catch_init calls.

Index: exceptions.c
===================================================================
RCS file: /cvs/src/src/gdb/exceptions.c,v
retrieving revision 1.13
diff -p -u -r1.13 exceptions.c
--- exceptions.c	15 Jan 2005 18:59:43 -0000	1.13
+++ exceptions.c	16 Jan 2005 19:50:26 -0000
@@ -73,8 +73,6 @@ struct catcher
   volatile struct exception *exception;
   /* Saved/current state.  */
   int mask;
-  char *saved_error_pre_print;
-  char *saved_quit_pre_print;
   struct ui_out *saved_uiout;
   struct cleanup *saved_cleanup_chain;
   /* Back link.  */
@@ -86,7 +84,6 @@ static struct catcher *current_catcher;
 
 static SIGJMP_BUF *
 catcher_init (struct ui_out *func_uiout,
-	      char *errstring,
 	      volatile struct exception *exception,
 	      return_mask mask)
 {
@@ -100,14 +97,6 @@ catcher_init (struct ui_out *func_uiout,
 
   new_catcher->mask = mask;
 
-  /* Override error/quit messages during FUNC. */
-  new_catcher->saved_error_pre_print = error_pre_print;
-  new_catcher->saved_quit_pre_print = quit_pre_print;
-  if (mask & RETURN_MASK_ERROR)
-    error_pre_print = errstring;
-  if (mask & RETURN_MASK_QUIT)
-    quit_pre_print = errstring;
-
   /* Override the global ``struct ui_out'' builder.  */
   new_catcher->saved_uiout = uiout;
   uiout = func_uiout;
@@ -137,9 +126,6 @@ catcher_pop (void)
 
   uiout = old_catcher->saved_uiout;
 
-  quit_pre_print = old_catcher->saved_quit_pre_print;
-  error_pre_print = old_catcher->saved_error_pre_print;
-
   xfree (old_catcher);
 }
 
@@ -458,7 +444,7 @@ catch_exception (struct ui_out *uiout,
 {
   volatile struct exception exception;
   SIGJMP_BUF *catch;
-  catch = catcher_init (uiout, NULL, &exception, mask);
+  catch = catcher_init (uiout, &exception, mask);
   for (SIGSETJMP ((*catch));
        catcher_state_machine (CATCH_ITER);)
     (*func) (uiout, func_args);
@@ -474,7 +460,7 @@ catch_exceptions_with_msg (struct ui_out
 {
   volatile struct exception exception;
   volatile int val = 0;
-  SIGJMP_BUF *catch = catcher_init (uiout, NULL, &exception, mask);
+  SIGJMP_BUF *catch = catcher_init (uiout, &exception, mask);
   for (SIGSETJMP ((*catch)); catcher_state_machine (CATCH_ITER);)
     val = (*func) (uiout, func_args);
   print_any_exception (gdb_stderr, NULL, exception);
@@ -503,7 +489,7 @@ catch_errors (catch_errors_ftype *func, 
 {
   volatile int val = 0;
   volatile struct exception exception;
-  SIGJMP_BUF *catch = catcher_init (uiout, errstring, &exception, mask);
+  SIGJMP_BUF *catch = catcher_init (uiout, &exception, mask);
   /* This illustrates how it is possible to nest the mechanism and
      hence catch "break".  Of course this doesn't address the need to
      also catch "return".  */
@@ -520,7 +506,7 @@ catch_command_errors (catch_command_erro
 		      char *arg, int from_tty, return_mask mask)
 {
   volatile struct exception e;
-  SIGJMP_BUF *catch = catcher_init (uiout, NULL, &e, mask);
+  SIGJMP_BUF *catch = catcher_init (uiout, &e, mask);
   for (SIGSETJMP ((*catch)); catcher_state_machine (CATCH_ITER);)
     command (arg, from_tty);
   print_any_exception (gdb_stderr, NULL, e);

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