diff src/cmdloop.c @ 2532:989a7680c221

[xemacs-hg @ 2005-01-29 09:15:55 by ben] Add backtrace when throwing past call_trapping_problems() alloc.c, backtrace.h, bytecode.c, cmdloop.c, eval.c, lisp.h, macros.c: Also include a backtrace when we catch an attempt to throw outside of a function where call_trapping_problems() has been used.
author ben
date Sat, 29 Jan 2005 09:16:00 +0000
parents 04bc9d2f42c7
children facf3239ba30
line wrap: on
line diff
--- a/src/cmdloop.c	Sat Jan 29 09:06:40 2005 +0000
+++ b/src/cmdloop.c	Sat Jan 29 09:16:00 2005 +0000
@@ -1,6 +1,6 @@
 /* Editor command loop.
    Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
-   Copyright (C) 1995, 1996, 2001, 2002 Ben Wing.
+   Copyright (C) 1995, 1996, 2001, 2002, 2003 Ben Wing.
 
 This file is part of XEmacs.
 
@@ -290,7 +290,7 @@
      Otherwise, this function will return normally when all command-
      line arguments have been processed, the user's initialization
      file has been read in, and the first frame has been created. */
-  internal_catch (Qtop_level, top_level_1, Qnil, 0, 0);
+  internal_catch (Qtop_level, top_level_1, Qnil, 0, 0, 0);
 
   /* If an error occurred during startup and the initial console
      wasn't created, then die now (the error was already printed out
@@ -310,7 +310,7 @@
       MARK_MODELINE_CHANGED;
       /* Now invoke the command loop.  It never returns; however, a
 	 throw to 'top-level will place us at the end of this loop. */
-      internal_catch (Qtop_level, command_loop_2, Qnil, 0, 0);
+      internal_catch (Qtop_level, command_loop_2, Qnil, 0, 0, 0);
       /* #### wrong with selected-console? */
       /* We don't actually call clear_echo_area() here, partially
 	 at least because that runs Lisp code and it may be unsafe
@@ -373,7 +373,7 @@
   specbind (Qstandard_output, Qt);
   specbind (Qstandard_input, Qt);
 
-  val = internal_catch (Qexit, command_loop_2, Qnil, 0, 0);
+  val = internal_catch (Qexit, command_loop_2, Qnil, 0, 0, 0);
 
   if (EQ (val, Qt))
     /* Turn abort-recursive-edit into a quit. */
@@ -440,8 +440,7 @@
   if (NILP (catch_errors))
     Fcommand_loop_1 ();
   else
-    internal_catch (Qtop_level,
-                    cold_load_command_loop, Qnil, 0, 0);
+    internal_catch (Qtop_level, cold_load_command_loop, Qnil, 0, 0, 0);
   goto loop;
   RETURN_NOT_REACHED (Qnil);
 }