Don't modify minibuffer variables globally

* lisp/files.el (cd): Use setq-local instead.  (Bug#25260)
This commit is contained in:
Leo Liu 2016-12-25 14:37:51 +08:00
parent 5b5e036651
commit 8b7182626e

View file

@ -719,10 +719,10 @@ The path separator is colon in GNU and GNU-like systems."
;; (which will lead to the use of B/a). ;; (which will lead to the use of B/a).
(minibuffer-with-setup-hook (minibuffer-with-setup-hook
(lambda () (lambda ()
(setq minibuffer-completion-table (setq-local minibuffer-completion-table
(apply-partially #'locate-file-completion-table (apply-partially #'locate-file-completion-table
cd-path nil)) cd-path nil))
(setq minibuffer-completion-predicate (setq-local minibuffer-completion-predicate
(lambda (dir) (lambda (dir)
(locate-file dir cd-path nil (locate-file dir cd-path nil
(lambda (f) (and (file-directory-p f) 'dir-ok)))))) (lambda (f) (and (file-directory-p f) 'dir-ok))))))