summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/ert.el
diff options
context:
space:
mode:
authorNoam Postavsky <npostavs@gmail.com>2017-09-23 11:40:14 -0400
committerNoam Postavsky <npostavs@gmail.com>2017-09-28 19:57:24 -0400
commitaf130f900fc499f71ea22f10ba055a75ce35ed4e (patch)
treed0523ca201979b85b0dd14ad224f01ac2daec3cb /lisp/emacs-lisp/ert.el
parent7476eeaa236039b8ebd09aad6bd977d26646ace6 (diff)
downloademacs-af130f900fc499f71ea22f10ba055a75ce35ed4e.tar.gz
Fix ert backtrace saving for non-`signal'ed errors (Bug#28333)
* lisp/emacs-lisp/ert.el (ert--run-test-debugger): Take the frames above the `debugger' frame, rather than assuming there will be a `signal' frame.
Diffstat (limited to 'lisp/emacs-lisp/ert.el')
-rw-r--r--lisp/emacs-lisp/ert.el5
1 files changed, 2 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/ert.el b/lisp/emacs-lisp/ert.el
index d4276221ba5..83acbacb883 100644
--- a/lisp/emacs-lisp/ert.el
+++ b/lisp/emacs-lisp/ert.el
@@ -742,9 +742,8 @@ run. ARGS are the arguments to `debugger'."
;; backtrace ready for printing is important for batch
;; use.
;;
- ;; Grab the frames starting from `signal', frames below
- ;; that are all from the debugger.
- (backtrace (backtrace-frames 'signal))
+ ;; Grab the frames above the debugger.
+ (backtrace (cdr (backtrace-frames debugger)))
(infos (reverse ert--infos)))
(setf (ert--test-execution-info-result info)
(cl-ecase type