diff options
author | Robin Templeton <[email protected]> | 2014-08-11 06:59:48 -0400 |
---|---|---|
committer | Robin Templeton <[email protected]> | 2015-04-20 00:29:03 -0400 |
commit | 147728721aefd0521ced92883aa1ae3e14420d68 (patch) | |
tree | 5bcc5b306a4181f6921c9fd7e7109ddd54c3bc43 /lisp | |
parent | 568b1feb58c0a7d9e0fb163ab216a92abd74acf4 (diff) |
ignore-errors ignores scheme exceptions
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/subr.el | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lisp/subr.el b/lisp/subr.el index c6e92bf054..9d9b9270f3 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -234,7 +234,12 @@ Otherwise, return result of last form in BODY. See also `with-demoted-errors' that does something similar without silencing all errors." (declare (debug t) (indent 0)) - `(condition-case nil (progn ,@body) (error nil))) + `(condition-case nil + (%funcall (@ (guile) catch) + t + #'(lambda () ,@body) + #'(lambda (&rest args) nil)) + (error nil))) ;;;; Basic Lisp functions. |