aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChong Yidong2011-08-20 17:17:06 -0400
committerChong Yidong2011-08-20 17:17:06 -0400
commitbd1ba3e824d2d070b76e0c77529a993db2d8b4ba (patch)
tree44dae84211870fd4e327e96bfa82670cc129ec5b
parent04ed2e9c6a7098fe69447ecffae9692fd54faa94 (diff)
downloademacs-bd1ba3e824d2d070b76e0c77529a993db2d8b4ba.tar.gz
emacs-bd1ba3e824d2d070b76e0c77529a993db2d8b4ba.zip
* src/eval.c (Fsignal): Handle `debug' symbol in error handler.
Fixes: debbugs:9329
-rw-r--r--src/ChangeLog4
-rw-r--r--src/eval.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 85a55b2b7c9..adf7291eadf 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,7 @@
12011-08-20 Chong Yidong <cyd@stupidchicken.com>
2
3 * eval.c (Fsignal): Handle `debug' symbol in error handler (Bug#9329).
4
12011-08-19 Eli Zaretskii <eliz@gnu.org> 52011-08-19 Eli Zaretskii <eliz@gnu.org>
2 6
3 * xfaces.c (face_at_buffer_position): Avoid repeated evaluation of 7 * xfaces.c (face_at_buffer_position): Avoid repeated evaluation of
diff --git a/src/eval.c b/src/eval.c
index e37425020c9..8b121665ff7 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1699,6 +1699,10 @@ See also the function `condition-case'. */)
1699 && (!NILP (Vdebug_on_signal) 1699 && (!NILP (Vdebug_on_signal)
1700 /* If no handler is present now, try to run the debugger. */ 1700 /* If no handler is present now, try to run the debugger. */
1701 || NILP (clause) 1701 || NILP (clause)
1702 /* A `debug' symbol in the handler list disables the normal
1703 suppression of the debugger. */
1704 || (CONSP (clause) && CONSP (XCAR (clause))
1705 && !NILP (Fmemq (Qdebug, XCAR (clause))))
1702 /* Special handler that means "print a message and run debugger 1706 /* Special handler that means "print a message and run debugger
1703 if requested". */ 1707 if requested". */
1704 || EQ (h->handler, Qerror))) 1708 || EQ (h->handler, Qerror)))