summaryrefslogtreecommitdiff
path: root/lisp/eshell/esh-var.el
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2013-09-14 17:10:45 -0700
committerGlenn Morris <rgm@gnu.org>2013-09-14 17:10:45 -0700
commit1e53bb4bf2754c724bcb894e730fd77e25dae80c (patch)
tree446081c5b29310e9bf0a798c75b6505b867a5b81 /lisp/eshell/esh-var.el
parent0d8863b3b1829f8e53da8dff9ffc2dab60390da6 (diff)
downloademacs-1e53bb4bf2754c724bcb894e730fd77e25dae80c.tar.gz
emacs-1e53bb4bf2754c724bcb894e730fd77e25dae80c.tar.bz2
emacs-1e53bb4bf2754c724bcb894e730fd77e25dae80c.zip
* lisp/eshell/esh-cmd.el (eshell--local-vars): New variable.
(eshell-rewrite-for-command): Add for loop vars to eshell--local-vars. * lisp/eshell/esh-var.el (eshell-get-variable): Respect eshell--local-vars. * test/automated/eshell.el (eshell-test/for-name-shadow-loop): New test. (eshell-test/for-loop, eshell-test/for-name-loop): Doc fix. Fixes: debbugs:15372
Diffstat (limited to 'lisp/eshell/esh-var.el')
-rw-r--r--lisp/eshell/esh-var.el1
1 files changed, 1 insertions, 0 deletions
diff --git a/lisp/eshell/esh-var.el b/lisp/eshell/esh-var.el
index 8dd19618da2..3121dadace2 100644
--- a/lisp/eshell/esh-var.el
+++ b/lisp/eshell/esh-var.el
@@ -502,6 +502,7 @@ Possible options are:
(let ((sym (intern-soft var)))
(if (and sym (boundp sym)
(or eshell-prefer-lisp-variables
+ (memq sym eshell--local-vars) ; bug#15372
(not (getenv var))))
(symbol-value sym)
(getenv var))))