summaryrefslogtreecommitdiff
path: root/lisp/eshell
diff options
context:
space:
mode:
authorJim Porter <jporterbugs@gmail.com>2023-03-20 17:24:28 -0700
committerJim Porter <jporterbugs@gmail.com>2023-03-28 11:43:27 -0700
commit5b005f26a831881b0509f05d3b28dafbbe5bad41 (patch)
tree7b1af283cd1cf1833a0c26e0fc9352919c29db67 /lisp/eshell
parent28a9438169f379cea6d79fb480a85fc56ad666f4 (diff)
downloademacs-5b005f26a831881b0509f05d3b28dafbbe5bad41.tar.gz
; Fix an edge case in how 'eshell-do-eval' handles 'let' bodies
* lisp/eshell/esh-cmd.el (ehell-do-eval): Use 'car-safe'; the object in question might not be a cons cell.
Diffstat (limited to 'lisp/eshell')
-rw-r--r--lisp/eshell/esh-cmd.el2
1 files changed, 1 insertions, 1 deletions
diff --git a/lisp/eshell/esh-cmd.el b/lisp/eshell/esh-cmd.el
index 93f2616020c..e0651b76249 100644
--- a/lisp/eshell/esh-cmd.el
+++ b/lisp/eshell/esh-cmd.el
@@ -1168,7 +1168,7 @@ have been replaced by constants."
(setcar (cdr args) (eshell-do-eval (cadr args) synchronous-p))
(eval form))
((eq (car form) 'let)
- (when (not (eq (car (cadr args)) 'eshell-do-eval))
+ (unless (eq (car-safe (cadr args)) 'eshell-do-eval)
(eshell-manipulate "evaluating let args"
(dolist (letarg (car args))
(when (and (listp letarg)