(find_handler_clause): Make stack-trace-on-error work in batch mode (bug#4228).
authorStefan Monnier <monnier@iro.umontreal.ca>
Sun, 20 Sep 2009 17:05:00 +0000 (17:05 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sun, 20 Sep 2009 17:05:00 +0000 (17:05 +0000)
src/ChangeLog
src/eval.c

index 566707d..a4d3cb7 100644 (file)
@@ -1,3 +1,8 @@
+2009-09-20  Tom Tromey  <tromey@redhat.com>
+
+       * eval.c (find_handler_clause): Make stack-trace-on-error work in
+       batch mode (bug#4228).
+
 2009-09-18  Rob Christie  <robchristie@gmail.com> (tiny change)
 
        * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
index 94b6214..8d446de 100644 (file)
@@ -1945,14 +1945,13 @@ find_handler_clause (handlers, conditions, sig, data)
        {
          max_lisp_eval_depth += 15;
          max_specpdl_size++;
-#ifdef PROTOTYPES
-         internal_with_output_to_temp_buffer ("*Backtrace*",
-                                              (Lisp_Object (*) (Lisp_Object)) Fbacktrace,
-                                              Qnil);
-#else
-         internal_with_output_to_temp_buffer ("*Backtrace*",
-                                              Fbacktrace, Qnil);
-#endif
+         if (noninteractive)
+           Fbacktrace ();
+         else
+           internal_with_output_to_temp_buffer
+             ("*Backtrace*",
+              (Lisp_Object (*) (Lisp_Object)) Fbacktrace,
+              Qnil);
          max_specpdl_size--;
          max_lisp_eval_depth -= 15;
        }