Mercurial > hg > xemacs-beta
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); }