]> git.eshelyaron.com Git - emacs.git/commitdiff
(eval-last-sexp): Fix bug#71774
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 27 Jun 2024 18:39:27 +0000 (14:39 -0400)
committerEshel Yaron <me@eshelyaron.com>
Fri, 28 Jun 2024 06:12:48 +0000 (08:12 +0200)
* lisp/progmodes/elisp-mode.el (eval-last-sexp): Set `values` only
when `eval-expression-debug-on-error` is nil.

(cherry picked from commit bf8c9f702ba7cba8f835996d49cad01865e2813e)

lisp/progmodes/elisp-mode.el

index a8bb45a4dce832500dfa555f9cc0f690cfda2c3e..b365a0adb2b8390e442e47bbdc5973677040fe62 100644 (file)
@@ -1632,7 +1632,10 @@ integer value is also printed as a character of that codepoint.
 If `eval-expression-debug-on-error' is non-nil, which is the default,
 this command arranges for all errors to enter the debugger."
   (interactive "P")
-  (values--store-value
+  (funcall
+   ;; Not sure why commit 4428c27c1ae7d stored into `values' only when
+   ;; `eval-expression-debug-on-error' was nil, but let's preserve that.
+   (if eval-expression-debug-on-error #'identity #'values--store-value)
    (handler-bind ((error (if eval-expression-debug-on-error
                              #'eval-expression--debug #'ignore)))
      (elisp--eval-last-sexp eval-last-sexp-arg-internal))))