From: Chong Yidong Date: Wed, 27 Aug 2008 20:26:03 +0000 (+0000) Subject: (find_handler_clause): Temporarily increase max-lisp-eval-depth while X-Git-Tag: emacs-pretest-23.0.90~3223 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=48ce8ca74e295d17f876c088caf2faa2cccadc0a;p=emacs.git (find_handler_clause): Temporarily increase max-lisp-eval-depth while printing the backtrace buffer, to guarantee that help-mode code can run. --- diff --git a/src/ChangeLog b/src/ChangeLog index 0049b350f44..43d5caa4eaf 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2008-08-27 Chong Yidong + + * eval.c (find_handler_clause): Temporarily increase + max-lisp-eval-depth while printing the backtrace buffer, to + guarantee that help-mode code can run. + 2008-08-27 Eli Zaretskii * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame diff --git a/src/eval.c b/src/eval.c index 083cea889f5..6531b977990 100644 --- a/src/eval.c +++ b/src/eval.c @@ -1941,16 +1941,18 @@ find_handler_clause (handlers, conditions, sig, data) { if (!NILP (sig) && wants_debugger (Vstack_trace_on_error, conditions)) { + max_lisp_eval_depth += 15; max_specpdl_size++; - #ifdef PROTOTYPES +#ifdef PROTOTYPES internal_with_output_to_temp_buffer ("*Backtrace*", (Lisp_Object (*) (Lisp_Object)) Fbacktrace, Qnil); - #else +#else internal_with_output_to_temp_buffer ("*Backtrace*", Fbacktrace, Qnil); - #endif +#endif max_specpdl_size--; + max_lisp_eval_depth -= 15; } if (!debugger_considered)