summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2021-10-11 11:14:26 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2021-10-11 11:14:26 +0200
commit07edc28bdbfeeaeb1008b4fe21bfda586feae562 (patch)
tree476fba48580734289985d213be5152a10ca40b9e
parent96278de8ac2166c37925f2dfbc0eeb6d368142b9 (diff)
downloademacs-07edc28bdb.tar.gz
Fix ert errors when there's a test that binds `debug-on-error'
* lisp/emacs-lisp/ert.el (ert--run-test-internal): Don't infloop on errors when signalling errors (bug#51131).
-rw-r--r--lisp/emacs-lisp/ert.el4
1 files changed, 4 insertions, 0 deletions
diff --git a/lisp/emacs-lisp/ert.el b/lisp/emacs-lisp/ert.el
index 98cb1fd1cf6..b7d984374cb 100644
--- a/lisp/emacs-lisp/ert.el
+++ b/lisp/emacs-lisp/ert.el
@@ -783,6 +783,10 @@ This mainly sets up debugger-related bindings."
(ert--run-test-debugger test-execution-info
args)))
(debug-on-error t)
+ ;; Don't infloop if the error being called is erroring
+ ;; out, and we have `debug-on-error' bound to nil inside
+ ;; the test.
+ (backtrace-on-error-noninteractive nil)
(debug-on-quit t)
;; FIXME: Do we need to store the old binding of this
;; and consider it in `ert--run-test-debugger'?